如何更改反应本机推送通知状态栏图标?

How to change react native push notifications status bar icon?

我正在使用 firebasereact-native-push-notification 将通知推送到我的 Android 应用程序并努力更改小通知图标自己的图标和关于此主题的线程的 none 似乎有所帮助。我的 @mipmap 文件夹中有 ic_test.png,我的 Android 清单工作中有 none 这些元数据声明:

1。 xml <meta-data android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@drawable/ic_test" />

2。 xml <meta-data android:name="com.dieam.reactnativepushnotification.notification_icon" android:resource="@mipmap/ic_test" />

不过,我可以通过添加元数据来更改图标的颜色:

<meta-data  
  android:name="com.dieam.reactnativepushnotification.notification_color"
  android:resource="@android:color/white"
/>

情况:

知道我这里可能做错了什么吗?

编辑:

通过不在清单中设置任何图标元数据资源,使其适用于本地通知。我刚刚设置了以下元数据资源

<meta-data  
  android:name="com.dieam.reactnativepushnotification.notification_color"
  android:resource="@android:color/MY_COLOR"
/>

更改图标的背景颜色。

此外,设置以下key-value对

PushNotification.localNotification({...parameters, smallIcon: 'ic_test'});

触发本地通知时。

编辑:

我正在使用 Firebase Cloud Messaging legacy HTTP protocol 并将 icon 参数设置为 "ic_test" 似乎也没有用。

实际上,它显示为一个白色空白方块,因为您处于开发模式,通过在生产模式下构建,您可以看到与您的应用程序图标完全一样的东西。

不过,如果你想制作你的图标,你应该关注 material principles. then generate all sizes by using this link 并输入图标名称 ic_notification

然后把所有尺码ic_notification放到如下地址:

android/app/main/res/mipmap

并将以下行添加到 AndroidManifest.xml 文件中:

<meta-data android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@mipmap/ic_notification" />

清理构建文件夹,清理缓存文件并使用 yarn start --reset-cache 然后 yarn android

提示:如果您使用的是模拟器,请注意在您的模拟器高级选项中使用 Cold Boot 而不是 Quick Boot