FirebaseでAndroidのプッシュ通知のアイコンを設定する方法

Androidアプリ

Unityで作ったアプリでFirebaseを使ってプッシュ通知をしていますが、プッシュ通知用のアイコンを設定する方法のメモです。

なぜかFirebaseの公式サイトには記載が見当たらないのですが、設定しないとデフォルトの白丸アイコンになってしまうので設定を忘れてしまうと恥ずかしいです。

アイコンの画像を用意する

何はともあれプッシュ通知用のアイコンを用意します。

仕様は下記の通り。

プッシュ通知アイコンの仕様
  • サイズは128px × 128px
  • 白と透過で用意して、色はコードで指定する
こむ太郎
こむ太郎

僕はうっかり1024px × 1024pxの無駄に大きなアイコンを用意してしまいましたが、大きすぎる分には自動調整されるようで問題なさそうでした。

画像のフォーマットは特に指定がなさそうですが、僕はいつもPNGで用意してます。

Unityのプロジェクトにアイコンと設定を格納する

Firebaseのプラグインをインストールしてあれば、PluginsフォルダにFirebaseのフォルダができているはずです。

Firebaseプラグイン

その中のresフォルダの中にdrawableフォルダを作成して、その中に作成したアイコンの画像ファイルを格納します。

AndroidManifest.xmlにアイコンの設定を追加する

FirebaseApp.androidlibフォルダ内にAndroidManifest.xmlがあるはずなので、編集してプッシュ通知のアイコンの設定を追記します。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.google.firebase.app.unity"
          android:versionCode="1"
          android:versionName="1.0">

<!--追加した部分。ここから-->
  <application>
    <meta-data
     android:name="com.google.firebase.messaging.default_notification_icon"
          android:resource="@drawable/push_icon" />
  </application>
<!--ここまで-->

</manifest>

Applicationタグとその中身を追記してます。

push_iconが作成したアイコンのファイル名なので用意したファイル名に合わせましょう。
この場合、実際のファイル名はpush_icon.pngですが、拡張子は記載不要です。

プラグインを更新したら設定のリセットに注意

以上で設定は完了で、プッシュ通知を飛ばせば作成したアイコンがついた通知が受信できるはずです。

注意点は、Firebaseのプラグインをアップデートしたりした時にアイコンファイルが削除さされてAndroidManifest.xmlの内容もリセットされるようです

プラグインをアップデートした後は設定しなおしましょう。

こむ太郎
こむ太郎

プラグインのアップデートのたびに設定し直しってスマートじゃないし、うっかりすると忘れそうです。

だれか、いい方法を知っていたら教えてください。

コメント

タイトルとURLをコピーしました