我正在构建一个Android应用程序,一切都适用于Android 5. +。但是,对于Android 4.x,当我尝试使用Android Studio进行编译时出现以下错误:
E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.NoClassDefFoundError: com.google.android.gms.R$string
at com.google.android.gms.common.internal.zzam.<init>(Unknown Source)
at com.google.firebase.FirebaseOptions.fromResource(Unknown Source)
at com.google.firebase.FirebaseApp.initializeApp(Unknown Source)
at com.google.firebase.provider.FirebaseInitProvider.onCreate(Unknown Source)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1064)
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(Unknown Source)
at android.app.ActivityThread.installProvider(ActivityThread.java:5181)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4733)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4666)
at android.app.ActivityThread.access$1300(ActivityThread.java:166)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1439)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5455)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:966)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:733)
at dalvik.system.NativeStart.main(Native Method)
在我的依赖项中,我已经尝试了compile 'com.google.android.gms:play-services:+'
以及compile 'com.google.android.gms:play-services:9.8.0'
。
我一直在尝试在线查找解决方案,人们建议添加Google Play服务依赖项,但我已经这样做了。我也曾尝试过compile 'com.android.support:multidex:1.0.0'
,但我认为这不会有任何区别,因为无论如何,我在Android Studio中看到了这条消息:
“Instant Run不支持将启用了multidex的构建变体部署到API级别为20或更低级别的目标。 要将Instant Run与启用了multidex的构建变体一起使用,请部署到API级别为21或更高的目标。“
任何提示?谢谢。
答案 0 :(得分:1)
解决方案只是在我的类中添加以下代码,扩展了Application:
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
解决方案位于java.lang.NoClassDefFoundError: com.google.android.gms.internal.zzmp,因此可以将此问题标记为重复。