Androidでpush通知を送れるように実装してみた

新着情報などがあった場合に送られてくるpush通知。今回無料でpush通知が送れるFirebaseというものがあるが
Firebaseを使いpush通知が送れるようにAndroidを実装してみた

参考にしたサイト

〇Firebaseの登録

上記サイトに従いやってください!!簡単に無料でできます

〇Android側の実装(共通)

①appのbuild.gradleに1行追加

これだけでAndroidアプリがバックグラウンドにある場合は送れるようになります!!

〇Android側の実装(固有の端末に送りたい場合)

①MyFirebaseInstanceIdServiceクラスの実装(名前は任意)

②appのbuild.gradleに追加
compile ‘com.google.firebase:firebase-messaging:11.0.4’
compile ‘com.firebase:firebase-jobdispatcher:0.7.0’

③AndroidManifest.xmlにMyFirebaseInstanceIdServiceを追加

④起動Activityで①のonTokenRefresh()を呼び出す

⑤ログに固有のTOKENが表示されるためFirebaseのNotificationを送る画面から単一端末を選択し「FCM 登録トークン」を入力する場所にTOKENを入力し送信

〇Android側の実装(フォアグラウンドで送信したい場合)

①MyFirebaseMessagingServiceクラスを実装(名前は任意)

②MyJobServiceクラスを実装

③上記2クラスをAndroidManifest.xmlに追加
するとFirebase送信時にMyFirebaseMessagingServiceクラスのonMessageReceivedメソッドが呼ばれるようになる!!
ちなみにバックグラウンド時はFirebaseが自動作成してしまうためメッセージのカスタマイズがむずかしい。
別の方法を考える必要性があるかも

〇今回のまとめ

なかなか30分で実装とまではいかないが思ったよりも簡単に実装できます!!Androidアプリにおいてpush通知は付き物?のような気もするので今後実装予定の人がいれば参考にしていただければ!!