android-gif-drawable
android-gif-drawable copied to clipboard
Error inflating class pl.droidsonroids.gif.GifImageView
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)
It may be caused by multidex misconfiguration: see #320 Let me know if that is the issue in your case.
multidex is enabled and i am using compile 'com.android.support:multidex:1.0.0'
May i upgrade multidex version?
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.
i followed all steps and it works now Thank you very much
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
i have used the same as described in the documentation u shared but have received a crash on fabric
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
Could you attach home_img
file?
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,
Hlw sir, please help me..
sir, this is a simple project. please check this..
https://github.com/solaymanislamjahid/test-app
@solaymanislamjahid sorry for the delay and thanks for the sample project. I'll check that.
does it support androidx ?
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.
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
Hi @koral--,
I'm in the same situation as @solaymanislamjahid. Can you please provide some fixes? I really need your help. Thanks.
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.
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).
Are you using APK or AAB as an installation medium? What device models and Android versions?
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.
Sorry for the delay. It looks like the same issue as: https://github.com/koral--/android-gif-drawable/issues/778#issuecomment-1179550565