Firebase Cloud Messaging(FCM)のサンプルアプリをビルドしてプッシュ通知を試す
GCMからFCMに移行するために仕組みを理解しながらサンプルアプリを試したときの覚書。
環境: Windows 10 64bit, Android Studio 2.1.1
参考
目次
- SDKを最新に
- Android向けのサンプルを実行(失敗)
- Firebase Consoleにアクセスしてプロジェクト作成
- もう一度実行(成功)
1.SDKを最新に
公式サイトを参考に開発環境を整える。
基本はAndroid SDK Managerで「Google Play services」を最新にするだけ。
2.Android向けのサンプルを実行(失敗)
サンプルはGitHubに公開されている。これをgit cloneする。
messagingフォルダをAndroid Studioで開く。
とりあえず実行してみると「google-services.json is missing」のエラー。まだ準備が必要みたいなので、公式サイト通りに進めていく。
3.Firebase Consoleにアクセスしてプロジェクト作成
Firebase Consoleにアクセス。「CREATE NEW PROJECT」をクリックしてプロジェクト作成。
Name: Firebase Cloud Messaging
Country: Japan
「Add Firebase to your Android app」を選択して、Package Nameを入力。AndroidManifest.xmlと同じ「com.google.firebase.quickstart.fcm」とした。
「Add App」するとgoogle-services.jsonがダウンロードされる。
画面の説明通りにapp直下に配置。
次に画面でbuild.gradleに追記しろと表示されるけど、既に記載済み。
これで「Finish」
4.もう一度実行(成功)
Android Studioで実行してみるとエラー
Error:Execution failed for task ':app:processDebugGoogleServices'.
> Missing api_key/current_key object
調べてみるともう一度google-services.jsonをダウンロードし直せとある。
ダウンロードし直してみると確かにapi_keyに値が入っている。こちらに置き換えて再度実行。
今度はビルド成功。
とりあえずこの状態でFirebase Consoleから通知を送ってみる。
Firebase Console上ではCompletedになるけどエミュレータは反応なし。
Android Studioのlogcatには表示されているので、今度はエミュレータ上でホームボタンを押してバックグラウンド状態で同じように送ってみた。
すると通知エリアに表示された。
第一段階クリア。
次はTitanium Moduleで実装する予定。
< Related Posts >