概要
正しくはFirebase Cloud Messagingがv9.8からデフォルトの通知アイコンとアクセントカラーを設定できるようになったことで、実質Notificationsのアイコンをランチャーアイコン固定から自由なアイコンに変更することができるようになりました。
Firebase Android SDK Release Notes | Firebase
Cloud Messaging
FEATURE Improved the reliability of message delivery to Android Wear devices that are paired with an iOS device.
FEATURE Added the ability to customize the default notification icon and color using AndroidManifest.xml metadata.
実装方法
AndroidManifest.xmlのapplication内のmeta-data
として登録します。
AndroidManifest.xml
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:name=".FanfanApplication"
>
<meta-data android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@android:drawable/sym_action_email" />
<meta-data android:name="com.google.firebase.messaging.default_notification_color"
android:resource="@color/colorAccent" />
<!-- 以降、省略 -->
ランチャーアイコンとは違うアイコン+ピンクのアクセントカラーを設定しました。
実行結果
meta-dataを設定していない場合(Android 7.0)
Android 6.0
Android 7.0
ようやく実用しやすい感じになりましたね!