Android java.lang.NoClassDefFoundError:com.google.firebase.FirebaseOptions在Play Store上更新到firebase后
我更新了我的应用程序以使用Firebase,它在我的设备上运行得非常好。然而,它在我的许多用户设备上崩溃了Android java.lang.NoClassDefFoundError:com.google.firebase.FirebaseOptions在Play Store上更新到firebase后,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我更新了我的应用程序以使用Firebase,它在我的设备上运行得非常好。然而,它在我的许多用户设备上崩溃了 java.lang.NoClassDefFoundError: com.google.firebase.FirebaseOptions at com.google.firebase.FirebaseApp.zzbu(Unknown Source) at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown So
java.lang.NoClassDefFoundError: com.google.firebase.FirebaseOptions
at com.google.firebase.FirebaseApp.zzbu(Unknown Source)
at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1058)
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source)
at android.app.ActivityThread.installProvider(ActivityThread.java:5021)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4633)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4573)
at android.app.ActivityThread.access$1400(ActivityThread.java:157)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1349)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:176)
at android.app.ActivityThread.main(ActivityThread.java:5319)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
at dalvik.system.NativeStart.main(Native Method)
这就是坠机事件
dependencies {
compile 'com.android.support:multidex:1.0.0'
compile 'com.splunk.mint:mint:4.0'
compile 'com.android.support:appcompat-v7:24.0.0'
compile 'com.android.support:support-v4:24.0.0'
compile 'com.google.android.gms:play-services:9.0.2'
compile 'com.google.firebase:firebase-core:9.0.2'
compile "com.mixpanel.android:mixpanel-android:4.+"
compile('com.crashlytics.sdk.android:crashlytics:2.6.3@aar') {
transitive = true;
}
}
这是我的身材,格雷德尔
这里有指针吗?您需要降低firebase版本,他们在某些设备上的新版本存在一些问题。看起来问题在于您用户的google play services版本。您可以尝试:
private boolean checkGooglePlayServices() {
final int status = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);
if (status != ConnectionResult.SUCCESS) {
Log.e(TAG, GooglePlayServicesUtil.getErrorString(status));
// ask user to update google play services.
Dialog dialog = GooglePlayServicesUtil.getErrorDialog(status, this, 1);
dialog.show();
return false;
} else {
Log.i(TAG, GooglePlayServicesUtil.getErrorString(status));
// google play services is updated.
//your code goes here...
return true;
}
}
验证google play服务是否可用。我应该降级到哪个版本?这个问题已经在许多其他问题中得到了解决,比如这个问题:。确保您已经遵循了所有的步骤,并且它正在工作。还有,为什么要使用9.0.2版?目前的版本是9.4.0。