Android Firebase DynamiteModule: Failed to load module descriptor
Android Firebase DynamiteModule: Failed to load module descriptor
自从升级到最新版的Firebase(9.0.0)后,在使用signInWithEmailAndPassword()
方法对用户进行身份验证时,我无法消除以下两个错误。有没有人知道出了什么问题?\n
05-19 18:09:49.245 23550-23589/[PACKAGE] E/DynamiteModule: 加载模块描述符类失败:在路径上找不到类 "com.google.android.gms.dynamite.descriptors.com.google.firebase.auth.ModuleDescriptor" :DexPathList[[zip文件 "/data/app/[PACKAGE]-3/base.apk"],nativeLibraryDirectories= [/data/app/[PACKAGE]-3/lib/x86,/vendor/lib,/system/lib]]
\n以及\n
05-19 18:09:49.252 23550-23550/[PACKAGE] E/FirebaseApp:Firebase API初始化失败.java.lang.reflect.InvocationTargetException at java.lang.reflect.Method.invoke(Native Method) at com.google.firebase.FirebaseApp.zza(Unknown Source) at com.google.firebase.FirebaseApp.initializeApp(Unknown Source) at com.google.firebase.FirebaseApp.initializeApp(Unknown Source) at com.google.firebase.FirebaseApp.zzbu(Unknown Source) at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source) at android.content.ContentProvider.attachInfo(ContentProvider.java:1748) at android.content.ContentProvider.attachInfo(ContentProvider.java:1723) at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source) (...) 由于java.lang.IncompatibleClassChangeError:预期的方法'java.io.File android.support.v4.content.ContextCompat.getNoBackupFilesDir(android.content.Context)'应为虚拟类型,但实际上是直接类型('com.google.firebase.iid.zzg'的声明出现在/data/data/[PACKAGE]/files/instant-run/dex/slice-com.google.firebase-firebase-iid-9.0.0_95503dc60ed409569d1585da411de93e6c633bf7-classes.dex中) at com.google.firebase.iid.zzg.zzeC(Unknown Source) at com.google.firebase.iid.zzg.(Unknown Source) at com.google.firebase.iid.zzg. (Unknown Source) at com.google.firebase.iid.zzd.zzb(Unknown Source) at com.google.firebase.iid.FirebaseInstanceId.getInstance(Unknown Source) at java.lang.reflect.Method.invoke(Native Method) at com.google.firebase.FirebaseApp.zza(Unknown Source) at com.google.firebase.FirebaseApp.initializeApp(Unknown Source) at com.google.firebase.FirebaseApp.initializeApp(Unknown Source) at com.google.firebase.FirebaseApp.zzbu(Unknown Source) at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source) at android.content.ContentProvider.attachInfo(ContentProvider.java:1748) at android.content.ContentProvider.attachInfo(ContentProvider.java:1723) at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source) (...)
从上面的内容可以整理出(Android Firebase DynamiteModule: Failed to load module descriptor)这个问题的出现的原因以及解决方法。
原因:该问题与Google Play Services的版本有关。根据Firebase官方网站的要求,Android设备必须运行Google Play Services 9.0.0或更高版本才能正常使用Firebase功能。
解决方法:检查设备上的Google Play Services版本是否符合要求,必要时更新Google Play Services版本。如果Google Play Services版本符合要求,但问题仍然存在,可以尝试关闭Instant Run功能。此外,还需要确保使用了最新版本的Google Play Services Gradle插件。
此外,还有一位用户提到了使用support library v23.4.0和Kotlin 1.0.2的情况,但并没有提及解决方法。
最后,有一位用户提到了Firebase的更新,要求Google Play Services的版本更新到10.0.0。
解决(Android Firebase DynamiteModule: Failed to load module descriptor)问题的方法是:
1. 检查设备上的Google Play Services版本是否符合要求,并更新至9.0.0或更高版本。
2. 关闭Instant Run功能。
3. 确保使用了最新版本的Google Play Services Gradle插件。
4. 如果问题仍然存在,可以尝试更新Google Play Services版本至10.0.0。
以上就是关于(Android Firebase DynamiteModule: Failed to load module descriptor)问题的原因和解决方法的整理。