Google サービス 3.0.0 での api_key/current キーの欠落

Googleサービスとライブラリの最新バージョン(9.0.0)でプロジェクトをアップグレードしたところ、次のような奇妙な問題が発生しました。

![エラービルド]1.

グレードコンソール:

:app:processDebugGoogleServices
Parsing json file: /Users/cyrilmorales/Documents/Projects/mobilemeans-punainenristi/app/google-services.json
:app:processDebugGoogleServices FAILED
Error:Execution failed for task ':app:processDebugGoogleServices'.
> Missing api_key/current_key object
Information:BUILD FAILED

build.gradle (root):

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

build.gradle (app):

dependencies {
    ....
    compile 'com.google.android.gms:play-services-analytics:9.0.0'
    compile 'com.google.android.gms:play-services-gcm:9.0.0'
    compile 'com.google.android.gms:play-services-maps:9.0.0'
    compile 'com.google.android.gms:play-services-location:9.0.0'
    ...
}
apply plugin: 'com.google.gms.google-services'

ただし、8.4.0のplayサービスライブラリとgoogle-services 2.1.0では正常に動作します。

何か解決策がありますか?

ソリューション

新しい設定ファイル(google-services.json)の生成元: https://developers.google.com/cloud-messaging/android/client#get-config

新しい設定ファイルには、クライアントセクションに "api_key":[ { "current_key": XXX } ]をクライアントセクションに追加しました。

Update:または、開発者コンソールで手動でサービスを有効にしてキーを生成します。

解説 (23)

この問題を抱えている皆さんは、今のところ、https://developers.google.com/cloud-messaging/android/client#get-config でアプリに任意のサービスを追加する必要があります。

私の場合、admobを追加しました(analyticsとgcmはすでにあります)。そして、api_keyを使ってファイルが生成されました。

これはバグだと思いますが、すぐに修正されるでしょう。

解説 (4)

Jozka Jozin'さんの合格答案とそのコメントがありますが、クラウドメッセージングは関係ありませんし、必要ありません。

とはいえ、 google-services.json` を再生成することが解決の鍵となりますので、投票しました。以下は私が行ったことです。

ご存知の通り、Analytics用のconfigファイルはGoogle Developers Guideから生成できます。

1: アプリを選択します。

アプリを選ぶをクリックします。

2: ポップアップを閉じる!隠れる...

.

3: admobのオプション!

![the hidden option of admob]]3.

4:もちろん、選択して有効にしてくださいね。

![有効にしてください!]][4

5: これで正しく設定ファイルを生成できるようになりました!

.

6: できました!今回は、設定ファイルにapi_keyを適切に含めるようにしました。

.

結論: 対話型生成ツールのUIはちょっとわかりづらいですね...。

解説 (2)