2

Вчера я обновил свои Google услуги Gradle плагин к этому:Получение Gradle исключение после обновления com.google.gms: Google-сервисы: 3.0.0

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. Как я могу это решить?

+0

У вашей отладочной сборки есть другой идентификатор приложения, чем ваша сборка. Добавьте Android-приложение с этим идентификатором приложения в консоль Firebase и получите новую конфигурацию JSON. –

+0

@EugenPechanec Если я зарегистрирую идентификатор приложения для отладки, будет ли он работать во всех типах сборки и вкусах? –

+0

google-services.json будет содержать всю информацию с консоли на момент загрузки, так что да. –

ответ

0

Перерегистрируйте ключ на console.developers

+0

Что это значит? –

+0

Амит Тивари уточнил мои данные о сообщении мин назад. – Aamir

1

В вашей отладки типа сборки вы используете этот пакет:

debug { 
     applicationIdSuffix = ".dev" 
    } 

Это сообщение

Нет соответствия клиента найдено имя пакета 'com.example.android.dev'

означает th на вашем google-services.jsonне содержит этот пакет.

Выполните следующие действия:

  • Перейти к Firebase консоль
  • добавить еще один андроид приложение незарегистрированного этот пакет
  • Экспорт снова google-services.json
0

Наконец исправили проблему.

Хитрость заключается в том, чтобы добавить еще одно приложение в консоль Firebase с именем отладочного пакета и отладочным отпечатком SHA1.

Выполнение этого по существу создает 2 приложения, но файл google-services.json, загруженный из любого приложения, содержит информацию об обоих приложениях.

 Смежные вопросы

  • Нет связанных вопросов^_^