Google サービス 3.0.0 での api_key/current キーの欠落
Googleサービスとライブラリの最新バージョン(9.0.0)でプロジェクトをアップグレードしたところ、次のような奇妙な問題が発生しました。
グレードコンソール:
: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では正常に動作します。
何か解決策がありますか?
156
3
新しい設定ファイル(google-services.json)の生成元: https://developers.google.com/cloud-messaging/android/client#get-config
新しい設定ファイルには、クライアントセクションに
"api_key":[ { "current_key": XXX } ]
をクライアントセクションに追加しました。Update:または、開発者コンソールで手動でサービスを有効にしてキーを生成します。
この問題を抱えている皆さんは、今のところ、https://developers.google.com/cloud-messaging/android/client#get-config でアプリに任意のサービスを追加する必要があります。
私の場合、admobを追加しました(analyticsとgcmはすでにあります)。そして、api_keyを使ってファイルが生成されました。
これはバグだと思いますが、すぐに修正されるでしょう。
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はちょっとわかりづらいですね...。