android-gif-drawable icon indicating copy to clipboard operation
android-gif-drawable copied to clipboard

Error inflating class pl.droidsonroids.gif.GifImageView

Open asmaaRashad93 opened this issue 8 years ago • 16 comments

I am using android studio and added compile 'pl.droidsonroids.gif:android-gif-drawable:1.2.2' in dependencies , it works well for Kitkat+ versions but after adding this in gradle i have inflating error for only kitkat version:

compile 'com.google.firebase:firebase-core:9.6.1'
compile 'com.google.android.gms:play-services-tagmanager:9.6.1'

this is my stackTrace:

android.view.InflateException: Binary XML file line #10: Error inflating class pl.droidsonroids.gif.GifImageView
 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2385)
  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2436)
 at android.app.ActivityThread.access$800(ActivityThread.java:157)
 at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1374)
 at android.os.Handler.dispatchMessage(Handler.java:110)
 at android.os.Looper.loop(Looper.java:193)
  at android.app.ActivityThread.main(ActivityThread.java:5398)
   at java.lang.reflect.Method.invokeNative(Native Method)
 at java.lang.reflect.Method.invoke(Method.java:515)
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:940)
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
 at dalvik.system.NativeStart.main(Native Method)
 Caused by: android.view.InflateException: Binary XML file line #10: Error inflating class pl.droidsonroids.gif.GifImageView
 at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:707)
 at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
 at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
 at android.view.LayoutInflater.inflate(LayoutInflater.java:353)  at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:284)
  at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
 at com.example.mmido.asfarandroid.AsfarApp.MainActivity.onCreate(MainActivity.java:51)
  at android.app.Activity.performCreate(Activity.java:5264)
 at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088)
  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2349)
 at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2436) 
  at android.app.ActivityThread.access$800(ActivityThread.java:157) 
 at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1374) 
 at android.os.Handler.dispatchMessage(Handler.java:110) 
 at android.os.Looper.loop(Looper.java:193) 
  at android.app.ActivityThread.main(ActivityThread.java:5398) 
 at java.lang.reflect.Method.invokeNative(Native Method) 
 at java.lang.reflect.Method.invoke(Method.java:515) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:940) 
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756) 
 at dalvik.system.NativeStart.main(Native Method) 
  Caused by: java.lang.ClassNotFoundException: Didn't find class "pl.droidsonroids.gif.GifImageView" on path: DexPathList[[zip file "/data/app/com.moreholydays.asfartours-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.moreholydays.asfartours-2, /vendor/lib, /system/lib]]
  at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
  at android.view.LayoutInflater.createView(LayoutInflater.java:559)
 at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696)
 at android.view.LayoutInflater.rInflate(LayoutInflater.java:755) 
 at android.view.LayoutInflater.inflate(LayoutInflater.java:492) 
 at android.view.LayoutInflater.inflate(LayoutInflater.java:397) 
 at android.view.LayoutInflater.inflate(LayoutInflater.java:353) 
 at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:284) 
 at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
at com.example.mmido.asfarandroid.AsfarApp.MainActivity.onCreate(MainActivity.java:51) 
 at android.app.Activity.performCreate(Activity.java:5264) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1088) 
 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2349) 
 at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2436) 
   at android.app.ActivityThread.access$800(ActivityThread.java:157) 
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1374) 
  at android.os.Handler.dispatchMessage(Handler.java:110) 
  at android.os.Looper.loop(Looper.java:193) 
  at android.app.ActivityThread.main(ActivityThread.java:5398) 
  at java.lang.reflect.Method.invokeNative(Native Method) 
 at java.lang.reflect.Method.invoke(Method.java:515) 
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:940) 
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756) 
 at dalvik.system.NativeStart.main(Native Method) 

asmaaRashad93 avatar Oct 03 '16 14:10 asmaaRashad93

It may be caused by multidex misconfiguration: see #320 Let me know if that is the issue in your case.

koral-- avatar Oct 03 '16 14:10 koral--

multidex is enabled and i am using compile 'com.android.support:multidex:1.0.0' May i upgrade multidex version?

asmaaRashad93 avatar Oct 03 '16 14:10 asmaaRashad93

Are you using MultiDexApplication or MultiDex#install() as described here https://developer.android.com/studio/build/multidex.html#mdex-gradle? If you have followed all steps there and issue is still present you can try upgrading multidex and build tools to the latest stable versions.

koral-- avatar Oct 03 '16 15:10 koral--

i followed all steps and it works now Thank you very much

asmaaRashad93 avatar Oct 03 '16 16:10 asmaaRashad93

OK. Similar issues related to multidex are reported time to time. I'll add README section about that. Here is the first known multidex issue: #224

koral-- avatar Oct 03 '16 16:10 koral--

i have used the same as described in the documentation u shared but have received a crash on fabric

atif-afridi avatar Apr 16 '18 05:04 atif-afridi

Heya.., I use minimum api 17 in my project, i used GifImageView in my project. well, i try to run my app in android version 4.4.4 , 5.0 and 6.0 but i see error in logcat but app install in the device . but when i try to open app It crashes and say. "Unfortunately My App has been stoped." when i removed GifImageView code, it run well.

And when i run it android version 9. it run smoothly.

i'm not use multidex. err.txt Screenshot_1

solaymanislamjahid avatar May 05 '20 19:05 solaymanislamjahid

Could you attach home_img file?

koral-- avatar May 05 '20 19:05 koral--

yes.

and my app smoothly run in my phone (xiaomi note 5, android version 9), but i can't run in others devices.

please help me sir,

solaymanislamjahid avatar May 05 '20 20:05 solaymanislamjahid

Hlw sir, please help me..

solaymanislamjahid avatar May 06 '20 18:05 solaymanislamjahid

sir, this is a simple project. please check this..

https://github.com/solaymanislamjahid/test-app

solaymanislamjahid avatar May 06 '20 23:05 solaymanislamjahid

@solaymanislamjahid sorry for the delay and thanks for the sample project. I'll check that.

koral-- avatar Jul 03 '20 17:07 koral--

does it support androidx ?

xiaogu-space avatar Jul 16 '20 03:07 xiaogu-space

Not sure if I fully understand what do you mean by supporting AndroidX here. However, the only part of AndroidX used now are annotations which can be considered supported.

koral-- avatar Jul 16 '20 18:07 koral--

Not sure if I fully understand what do you mean by supporting AndroidX here. However, the only part of AndroidX used now are annotations which can be considered supported.

OK,get it

xiaogu-space avatar Jul 17 '20 09:07 xiaogu-space

Hi @koral--,

I'm in the same situation as @solaymanislamjahid. Can you please provide some fixes? I really need your help. Thanks.

burakkarabekir avatar Jan 22 '21 12:01 burakkarabekir

E/AndroidRuntime: FATAL EXCEPTION: main Process: com.huimin.ordersystem, PID: 15188 android.view.InflateException: Binary XML file line #434 in com.huimin.ordersystem:layout/fragment_shopcar1: Binary XML file line #434 in com.huimin.ordersystem:layout/fragment_shopcar1: Error inflating class pl.droidsonroids.gif.GifImageView Caused by: android.view.InflateException: Binary XML file line #434 in com.huimin.ordersystem:layout/fragment_shopcar1: Error inflating class pl.droidsonroids.gif.GifImageView Caused by: java.lang.reflect.InvocationTargetException at java.lang.reflect.Constructor.newInstance0(Native Method) at java.lang.reflect.Constructor.newInstance(Constructor.java:343) at android.view.LayoutInflater.createView(LayoutInflater.java:881) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1033) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:988) at android.view.LayoutInflater.rInflate(LayoutInflater.java:1150) at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1111) at android.view.LayoutInflater.inflate(LayoutInflater.java:709) at android.view.LayoutInflater.inflate(LayoutInflater.java:547) at android.view.LayoutInflater.inflate(LayoutInflater.java:485) at com.huimin.ordersystem.fragment.ShopCarFragment1.onCreateView(ShopCarFragment1.java:239) at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2963) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:518) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2189) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2100) at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1971) at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:311) at com.huimin.ordersystem.activity.MainActivity.changeTabNew(MainActivity.java:582) at com.huimin.ordersystem.activity.MainActivity.onClick(MainActivity.java:631) at android.view.View.performClick(View.java:7753) at android.view.View.performClickInternal(View.java:7730) at android.view.View.access$3700(View.java:861) at android.view.View$PerformClick.run(View.java:29136) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:210) at android.os.Looper.loop(Looper.java:299) at android.app.ActivityThread.main(ActivityThread.java:8105) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:556) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1045) Caused by: java.lang.ExceptionInInitializerError at pl.droidsonroids.gif.GifDrawable.(GifDrawable.java:161) at pl.droidsonroids.gif.GifDrawable.(GifDrawable.java:96) at pl.droidsonroids.gif.GifViewUtils.setResource(GifViewUtils.java:55) at pl.droidsonroids.gif.GifViewUtils$GifImageViewAttributes.getResourceId(GifViewUtils.java:138) at pl.droidsonroids.gif.GifViewUtils$GifImageViewAttributes.(GifViewUtils.java:124) at pl.droidsonroids.gif.GifViewUtils.initImageView(GifViewUtils.java:29) at pl.droidsonroids.gif.GifImageView.(GifImageView.java:41) at java.lang.reflect.Constructor.newInstance0(Native Method)  at java.lang.reflect.Constructor.newInstance(Constructor.java:343)  at android.view.LayoutInflater.createView(LayoutInflater.java:881)  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1033)  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:988)  at android.view.LayoutInflater.rInflate(LayoutInflater.java:1150)  at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1111)  at android.view.LayoutInflater.inflate(LayoutInflater.java:709)  at android.view.LayoutInflater.inflate(LayoutInflater.java:547)  at android.view.LayoutInflater.inflate(LayoutInflater.java:485)  at com.huimin.ordersystem.fragment.ShopCarFragment1.onCreateView(ShopCarFragment1.java:239)  at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2963)  at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:518)  at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282)  at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2189)  at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:2100)  at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1971)  at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:311)  at com.huimin.ordersystem.activity.MainActivity.changeTabNew(MainActivity.java:582)  at com.huimin.ordersystem.activity.MainActivity.onClick(MainActivity.java:631)  at android.view.View.performClick(View.java:7753)  at android.view.View.performClickInternal(View.java:7730)  at android.view.View.access$3700(View.java:861)  at android.view.View$PerformClick.run(View.java:29136)  at android.os.Handler.handleCallback(Handler.java:938)  at android.os.Handler.dispatchMessage(Handler.java:99)  at android.os.Looper.loopOnce(Looper.java:210)  at android.os.Looper.loop(Looper.java:299)  at android.app.ActivityThread.main(ActivityThread.java:8105)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:556)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1045)  Caused by: pl.droidsonroids.relinker.MissingLibraryException: Could not find 'libpl_droidsonroids_gif.so'. Looked for: [arm64-v8a, armeabi-v7a, armeabi], but only found: []. at pl.droidsonroids.relinker.ApkLibraryInstaller.installLibrary(ApkLibraryInstaller.java:173) at pl.droidsonroids.relinker.ReLinkerInstance.loadLibraryInternal(ReLinkerInstance.java:180) at pl.droidsonroids.relinker.ReLinkerInstance.loadLibrary(ReLinkerInstance.java:136) at pl.droidsonroids.relinker.ReLinker.loadLibrary(ReLinker.java:70) at pl.droidsonroids.relinker.ReLinker.loadLibrary(ReLinker.java:51) 2022-09-26 11:33:20.937 15188-15188/com.huimin.ordersystem E/AndroidRuntime: at pl.droidsonroids.gif.LibraryLoader.loadLibrary(LibraryLoader.java:52) at pl.droidsonroids.gif.GifInfoHandle.(GifInfoHandle.java:27) ... 39 more

gyh124 avatar Sep 26 '22 03:09 gyh124

Hi @koral-- I got the following crash randomly on several devices on my published app. It looks like app is unable to find the native library libpl_droidsonroids_gif.so, which is required by the pl.droidsonroids.relinker library. Tried to look for a pattern here but couldn't find any! Do you have any suggestions? Thanks in advance...

  • minSdk 29
  • targetSdk 33

Caused by pl.droidsonroids.relinker.MissingLibraryException: Could not find 'libpl_droidsonroids_gif.so'. Looked for: [arm64-v8a, armeabi-v7a, armeabi], but only found: []. at pl.droidsonroids.relinker.ApkLibraryInstaller.installLibrary(ApkLibraryInstaller.java:173) at pl.droidsonroids.relinker.ReLinkerInstance.loadLibraryInternal(ReLinkerInstance.java:180) at pl.droidsonroids.relinker.ReLinkerInstance.loadLibrary(ReLinkerInstance.java:136) at pl.droidsonroids.relinker.ReLinker.loadLibrary(ReLinker.java:70) at pl.droidsonroids.relinker.ReLinker.loadLibrary(ReLinker.java:51) at pl.droidsonroids.gif.LibraryLoader.loadLibrary(LibraryLoader.java:53) at pl.droidsonroids.gif.GifInfoHandle.<clinit>(GifInfoHandle.java:27) at pl.droidsonroids.gif.GifDrawable.<init>(GifDrawable.java:161) at pl.droidsonroids.gif.GifDrawable.<init>(GifDrawable.java:96) at pl.droidsonroids.gif.GifViewUtils.setResource(GifViewUtils.java:55) at pl.droidsonroids.gif.GifViewUtils$GifImageViewAttributes.getResourceId(GifViewUtils.java:138) at pl.droidsonroids.gif.GifViewUtils$GifImageViewAttributes.<init>(GifViewUtils.java:124) at pl.droidsonroids.gif.GifViewUtils.initImageView(GifViewUtils.java:29) at pl.droidsonroids.gif.GifImageView.<init>(GifImageView.java:41) at java.lang.reflect.Constructor.newInstance0(Constructor.java) at java.lang.reflect.Constructor.newInstance(Constructor.java:343) at android.view.LayoutInflater.createView(LayoutInflater.java:858) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1010) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:965) at android.view.LayoutInflater.rInflate(LayoutInflater.java:1127) at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1088) at android.view.LayoutInflater.inflate(LayoutInflater.java:686) at android.view.LayoutInflater.inflate(LayoutInflater.java:538) at android.view.LayoutInflater.inflate(LayoutInflater.java:485) at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:775) at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:197) at com.tapforce.parsnip.Home.SplashMainLoadingActivity.onCreate(SplashMainLoadingActivity.java:55) at android.app.Activity.performCreate(Activity.java:8290) at android.app.Activity.performCreate(Activity.java:8270) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1329) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4009) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4201) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2438) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loopOnce(Looper.java:226) at android.os.Looper.loop(Looper.java:313) at android.app.ActivityThread.main(ActivityThread.java:8669) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135).

DimiVlachos avatar Feb 06 '23 04:02 DimiVlachos

Are you using APK or AAB as an installation medium? What device models and Android versions?

koral-- avatar Feb 06 '23 09:02 koral--

I'm using AAB as installation medium. Device models varies... seen it on Samsung A21s, Huawei Enjoy 9s, Redmi Note 11 Pro and a few other with Android versions 11, 12.

DimiVlachos avatar Feb 06 '23 19:02 DimiVlachos

Sorry for the delay. It looks like the same issue as: https://github.com/koral--/android-gif-drawable/issues/778#issuecomment-1179550565

koral-- avatar Mar 21 '23 20:03 koral--