7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Androidでプッシュ通知したいときにFCM(Firebase Cloud Messaging)を使う手順

Last updated at Posted at 2018-04-22

あらまし

  • FCMとAndroidでプッシュ通知やろうとして戸惑った話(よく考えるとQiitaに全部書いてある)
  • AndroidプロジェクトでWear OSを含むプロジェクトを作成するとwearとmobileが作成される
  • 設定がぱっと見勘違いしたり、デバッグ用署名証明書の出し方でちょっと戸惑ったりしたので簡単な手順を書いておく

作成したもの

参考になった参考URL

  1. AndroidのPush通知(FCM)をサーバー知識無しで試してみよう
  2. 【Android】30分で実装するPush通知【Firebase】

手順

1. 参考URL1Firebaseでプロジェクト作成しておく

  • プロジェクト作成中にデバッグ用署名証明書SHA-1を求められる
    • MacOSの場合は以下のコマンドで
    • keytool -v -list -alias androiddebugkey -keystore ~/.android/debug.keystore
    • 要注意:パスワードを要求されるが、おそらく何もないのがデフォルトのため、そのままEnter
  • プロジェクト作成中にbuild.configの編集が紹介されるがとりあえずスルー

2. Android Studio上で環境セットアップ

  •  Android StudioのTools>Firebase>Cloud Messaging>Set up~を選択
  •  ①Connect to Firebaseする
  •  ②Add FCM to your appする

3. app(mobileやwear)のbuild.gradleを編集する

  • そのままだとうまくいかなかったため編集
mobileのbuild.gradle
dependencies {
    // もともとある以下のようなplay-serviceは削除
    // implementation 'com.google.android.gms:play-services-wearable:+'

    // 必要なものを追記
    implementation 'com.google.firebase:firebase-messaging:11.8.0'
    implementation 'com.google.firebase:firebase-core:11.8.0'
    
    //必要なものを追記
    implementation 'com.google.android.gms:play-services-base:11.8.0'
    implementation 'com.google.android.gms:play-services-gcm:11.8.0'
}
wearのbuild.gradle
dependencies {
    // もともとある以下のようなplay-serviceは削除
    // implementation 'com.google.android.gms:play-services-wearable:15.0.0'

    //必要なものを追記
    implementation 'com.google.android.gms:play-services-base:11.8.0'
    implementation 'com.google.android.gms:play-services-gcm:11.8.0'

    //必要なものを追記
    implementation 'com.google.firebase:firebase-messaging:11.8.0'
    implementation 'com.google.firebase:firebase-core:11.8.0'

}

4. とりあえず通知を送ってみる

  • サービスが必要なのかと思い込んでいたが、通知を送るだけなら必要ない
  • アプリをインストールしバッググラウンド状態にする
  • 参考URL2の雰囲気で通知送る
  • バッググラウンドで通知送るだけならManifestの編集とかもいらない
  • 冒頭に挙げたPythonスクリプトでも送れる

参考

  • KotlinでAndroidのFirebaseトークン確認
    • onCreateにでも貼ってください

val CurrentToken = FirebaseInstanceId.getInstance().token
Log.d(TAG, CurrentToken)

7
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?