我以前一直使用谷歌播放服务8.3.0没有任何问题.我正在寻求升级到谷歌播放服务8.4.0.我正在使用以下播放库:
compile 'com.google.android.gms:play-services-analytics:8.4.0' compile 'com.google.android.gms:play-services-location:8.4.0' compile 'com.google.android.gms:play-services-gcm:8.4.0'
当我启动应用程序时崩溃,使用以下日志.
12-27 03:01:33.915 20567-20567/com.ryanc.android.stage.debug E/AndroidRuntime: FATAL EXCEPTION: main Process: com.ryanc.android.stage.debug, PID: 20567 java.lang.NoSuchMethodError: No static method zzz(Ljava/lang/Object;)Ljava/lang/Object; in class Lcom/google/android/gms/common/internal/zzx; or its super classes (declaration of 'com.google.android.gms.common.internal.zzx' appears in /data/app/com.ryanc.android.stage.debug-1/base.apk:classes17.dex) at com.google.android.gms.measurement.internal.zzw.zzaT(Unknown Source) at com.google.android.gms.measurement.AppMeasurementContentProvider.onCreate(Unknown Source) at android.content.ContentProvider.attachInfo(ContentProvider.java:1696) at android.content.ContentProvider.attachInfo(ContentProvider.java:1671) at android.app.ActivityThread.installProvider(ActivityThread.java:4999) at android.app.ActivityThread.installContentProviders(ActivityThread.java:4594) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4534) at android.app.ActivityThread.access$1500(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5254) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
编辑:不确定它会有所帮助,但在@gerardnimo请求这里是完整的build.gradle文件.另外值得注意的是,我已尝试从我的计算机上清理构建并删除并重新安装播放服务sdks.
apply plugin: 'com.android.application' apply plugin: 'checkstyle' def SDK = "$MIN_SDK_VERSION" def V_CODE = "$VERSION_CODE" buildscript { repositories { mavenCentral() } } repositories { mavenCentral() jcenter() maven { url 'https://zendesk.artifactoryonline.com/zendesk/repo' } maven { url "http://kahuna.github.io/kahuna-android/sdk" } } android { compileSdkVersion 23 buildToolsVersion '23.0.2' defaultConfig { applicationId "com.ryanc.android" minSdkVersion SDK.toInteger() targetSdkVersion 23 versionCode V_CODE.toInteger() versionName "$APP_VERSION.$BUILD_NUMBER" multiDexEnabled true } signingConfigs { debug { storeFile file("$DEBUG_KEYSTORE_PATH") storePassword "$DEBUG_KEYSTORE_PASSWORD" keyAlias "$DEBUG_KEY_ALIAS" keyPassword "$DEBUG_KEY_PASSWORD" } release { storeFile file("$KEYSTORE_PATH") storePassword "$KEYSTORE_PASSWORD" keyAlias "$KEY_ALIAS" keyPassword "$KEY_PASSWORD" } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 } buildTypes { debug { applicationIdSuffix ".debug" } release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release } } packagingOptions { exclude 'META-INF/LICENSE' exclude 'META-INF/NOTICE' } productFlavors { prod { applicationId "com.ryanc.android" } stage { applicationId "com.ryanc.android.stage" } qa { applicationId "com.ryanc.android.qa" } dev { applicationId "com.ryanc.android.dev" } } dexOptions { javaMaxHeapSize "4g" } } repositories { flatDir { dirs 'libs' } } dependencies { def supportVersion = "23.1.1" compile fileTree(dir: 'libs', include: ['*.jar']) compile project(':api') compile "com.android.support:support-v4:$supportVersion" compile "com.android.support:appcompat-v7:$supportVersion" compile "com.android.support:design:$supportVersion" compile 'com.facebook.android:facebook-android-sdk:4.8.1' compile 'uk.co.chrisjenx:calligraphy:2.0.1' compile "com.android.support:cardview-v7:$supportVersion" compile "com.android.support:recyclerview-v7:$supportVersion" compile "com.android.support:support-v13:$supportVersion" compile 'com.google.android.gms:play-services-analytics:8.4.0' compile 'com.google.android.gms:play-services-location:8.4.0' compile 'com.google.android.gms:play-services-gcm:8.4.0' compile 'com.fasterxml.jackson.core:jackson-databind:2.4.5' compile 'com.fasterxml.jackson.core:jackson-core:2.4.5' compile 'com.fasterxml.jackson.core:jackson-annotations:2.4.5' compile 'joda-time:joda-time:2.5' compile 'com.squareup.retrofit:retrofit:1.7.1' compile 'com.squareup.okhttp:okhttp-urlconnection:2.5.0' compile 'com.squareup.okhttp:okhttp:2.5.0' compile 'com.squareup.picasso:picasso:2.5.2' compile 'com.netflix.rxjava:rxjava-core:0.20.7' compile 'com.netflix.rxjava:rxjava-android:0.20.7' compile 'com.squareup.dagger:dagger:1.2.2' compile 'com.squareup.mortar:mortar:0.16' compile 'com.squareup.flow:flow:0.8' compile 'com.jakewharton:butterknife:6.1.0' compile 'com.jakewharton.timber:timber:2.5.1' compile 'com.braintreepayments:encryption:2.0.0' compile 'com.newrelic.agent.android:android-agent:5.3.2' compile 'com.instabug.library:instabugsupport:1.7.1' compile 'net.hockeyapp.android:HockeySDK:3.0.2' provided 'com.squareup.dagger:dagger-compiler:1.2.2' compile 'com.rengwuxian.materialedittext:library:2.1.4' compile 'com.android.support:multidex:1.0.1' compile 'com.mixpanel.android:mixpanel-android:4.6.2' compile 'com.roomorama:caldroid:2.2.0' compile 'com.squareup.phrase:phrase:1.1.0' compile 'com.zendesk:sdk:1.5.0.1' compile 'com.flipboard:bottomsheet-core:1.4.3' compile 'com.kahuna.sdk:kahuna:2.3.1' compile 'io.branch.sdk.android:library:1.+'' }
Artemiy.. 21
播放服务库的版本应该相同,例如:
做
compile 'com.google.android.gms:play-services-maps:8.4.0' compile 'com.google.android.gms:play-services-gcm:8.4.0'
别
compile 'com.google.android.gms:play-services-maps:7.8.0' compile 'com.google.android.gms:play-services-gcm:8.4.0'
Jing Li.. 7
在8.4.0上有选择地编译Google Play服务API时,我也遇到了问题(8.3.0 - > 8.4.0).
错误:
Could not find method com.google.android.gms.common.internal.zzx.zzy
升级前:
compile 'com.google.android.gms:play-services-maps:8.3.0'
升级后(不起作用):
compile 'com.google.android.gms:play-services-maps:8.4.0'
升级后(工作正常):
compile 'com.google.android.gms:play-services-maps:8.4.0' compile 'com.google.android.gms:play-services-gcm:8.4.0'
结论:似乎某些播放服务现在有一些必须明确指定的依赖关系,例如:maps - > gcm.
播放服务库的版本应该相同,例如:
做
compile 'com.google.android.gms:play-services-maps:8.4.0' compile 'com.google.android.gms:play-services-gcm:8.4.0'
别
compile 'com.google.android.gms:play-services-maps:7.8.0' compile 'com.google.android.gms:play-services-gcm:8.4.0'
在8.4.0上有选择地编译Google Play服务API时,我也遇到了问题(8.3.0 - > 8.4.0).
错误:
Could not find method com.google.android.gms.common.internal.zzx.zzy
升级前:
compile 'com.google.android.gms:play-services-maps:8.3.0'
升级后(不起作用):
compile 'com.google.android.gms:play-services-maps:8.4.0'
升级后(工作正常):
compile 'com.google.android.gms:play-services-maps:8.4.0' compile 'com.google.android.gms:play-services-gcm:8.4.0'
结论:似乎某些播放服务现在有一些必须明确指定的依赖关系,例如:maps - > gcm.