Error:(280, 61) error: cannot access zza class file for com.google.android.gms.common.internal.safeparcel.zza not found

Error:(280, 61) error: cannot access zza class file for com.google.android.gms.common.internal.safeparcel.zza not found

在我的 build.gradle 中,我使用了这个:

android {
    compileSdkVersion 23
    ....
    ....
    defaultConfig {
        ....
        targetSdkVersion 23
    }
}
....
....
dependencies {
    compile 'com.google.android.gms:play-services:9.0.0'
    ....
    ....
}

一切对我来说都正确编译,我正在将我的应用程序发布到 Google Play 商店,令我惊讶的是,Google 没有让我发布它,因为我正在使用targetSdkVersion 23,他们希望我至少使用 targetSdkVersion 26。我继续更改我的代码以使用 targetSdkVersion 26,我看到的错误表明 targetSdkVersion 26 至少需要 com.google.android.gms:play-services:10.2.1 或更高。我将代码更改为:

android {
    compileSdkVersion 26
    ....
    ....
    defaultConfig {
        ....
        targetSdkVersion 26
    }
}
....
....
dependencies {
    compile 'com.google.android.gms:play-services:10.2.1'
    ....
    ....
}

这次的错误信息是:

Error:(280, 61) error: cannot access zza class file for com.google.android.gms.common.internal.safeparcel.zza not found

有什么想法可以解决 Android 这次抱怨的问题吗?

更新 1:我删除了 buildToolsVersion,但我包含了 API 第 26 级的那个:

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"
    ....
    ....
}

我必须升级到

compile 'com.google.android.gms:play-services:10.2.1'
compile "com.google.firebase:firebase-messaging:10.2.1"

而不是我以前的值

compile 'com.google.android.gms:play-services:9.8.0'
compile "com.google.firebase:firebase-messaging:9.0.0"

您需要将 firebase-messaging 升级到最新版本

我升级到 实施 'com.google.firebase:firebase-messaging:17.6.0'

而且效果非常好。

注意:始终使用最新版本。