更新到com.google.gms后获取gradle异常:google-services:3.0.0

时间:2016-09-27 06:35:29

标签: android firebase build.gradle android-productflavors android-build-type

昨天,我将我的google服务gradle插件更新为:

dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0'
        classpath 'com.google.gms:google-services:3.0.0'
    }

之后,我的devDebug风格版本中出现以下错误:

Error:org.gradle.api.GradleException: No matching client found for package name 'com.example.android.dev'

以下是我的应用级build.gradle文件的相关部分:

defaultConfig {
        applicationId 'com.example.android'
        multiDexEnabled true
        minSdkVersion 16
        targetSdkVersion 24
        versionCode 47
        versionName "1.3.2"
        signingConfig signingConfigs.myConfig
        renderscriptTargetApi 24
        renderscriptSupportModeEnabled true
    }
    buildTypes {
        debug {
            applicationIdSuffix = ".dev"
            resValue "string", "app_name", "example-debug"
        }
        release {
            minifyEnabled false
            shrinkResources false
            resValue "string", "app_name", "example"
            signingConfig signingConfigs.myConfig
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
        dev {
            // dev utilizes minSDKVersion = 21 to allow the Android gradle plugin
            // to pre-dex each module and produce an APK that can be tested on
            // Android Lollipop without time consuming dex merging processes.
            minSdkVersion 21
        }
        prod {
            // The actual minSdkVersion for the application.
            minSdkVersion 16
        }
    }

我的prodRelease产品风格版本中没有出现此错误。我该如何解决?

3 个答案:

答案 0 :(得分:1)

在您的调试版本类型中,您正在使用此包:

 debug {
        applicationIdSuffix = ".dev"
    }

此消息

  

找不到包名称的匹配客户' com.example.android.dev'

表示您的google-services.json 不包含此套餐

请按照以下步骤操作:

  • 转到Firebase控制台
  • 添加另一个Android应用程序,同时注册此包
  • 再次导出google-services.json

答案 1 :(得分:0)

在console.developers上重新注册您的密钥

答案 2 :(得分:0)

最后解决了这个问题。

诀窍是使用调试包名称和调试Firebase指纹将另一个应用程序添加到SHA1控制台。

这样做基本上会创建2个应用,但从任何应用下载的google-services.json文件都包含有关这两个应用的信息。