java.lang.NoClassDefFoundError:com.google.android.gms.R $字符串,位于com.google.android.gms.common.internal.zzam。<init>(未知来源)

时间:2017-06-14 00:08:51

标签: android google-play-services

我正在构建一个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或更高的目标。“

任何提示?谢谢。

1 个答案:

答案 0 :(得分:1)

解决方案只是在我的类中添加以下代码,扩展了Application:

 @Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}

解决方案位于java.lang.NoClassDefFoundError: com.google.android.gms.internal.zzmp,因此可以将此问题标记为重复。