Flutter OneSignal 通知图标未设置。

6

我在我的Flutter应用程序中使用OneSignal,除了通知没有图标(默认为账单图标)之外,一切都很好。

我已经阅读了OneSignal的文档,并在Android Studio中生成了一个AssetsImage,位于PROJECT/android/res/目录下,名称为ic_stat_onesignal_default

然后我在真实设备上使用命令flutter run --release构建了应用程序,但通知仍带有默认的账单图标,而不是我的应用程序图标!!

是否还需要在AndroidManifest.xml文件中添加代码?

3个回答

6

使用这些工具并上传透明的图片 http://romannurik.github.io/AndroidAssetStudio/icons-notification.html#source.type=image&source.space.trim=1&source.space.pad=0&name=ic_stat_onesignal_default

对于OneSignal,文件夹名称为drawable-xxxx,因此您只需从工具中下载并提取到android\app\src\main\res中即可。

注意: 从Android 5开始,如果您的应用程序目标为Android API 21+,操作系统将强制使小型通知图标全部变为白色。如果您没有制作正确的图标,则它很可能会显示为铃铛或纯白色图标在状态栏中。


请确保卸载并重新安装应用程序以应用更改! - Ahmed El-Atab

1

只需做一些简单的事情,就可以更改默认通知图标。我在2021年也遇到了这个问题,但我解决了它。

在AndroidManifest.xml文件中

<meta-data
            android:name="com.onesignal.messaging.default_notification_icon"
            android:resource="@mipmap/ic_stat_onesignal_default" />

在build.gradle文件中。
 buildTypes {
  
  debug {
       defaultConfig {
     manifestPlaceholders = [onesignal_app_id               : "your onesignal app id put here",
                             onesignal_google_project_number: "your project number put here"]
   }
}

}

请将您的图片放在app/main/res/drawable中,并在所有mipmap中使用名称“ic_stat_onesignal_default”进行命名。请务必使用此名称,否则它将无法正常工作。

0
你需要在AndroidManifest.xml中添加以下行。同时创建以drawable-xxx开头的文件夹。你可以使用在线工具来完成这个任务...
 <meta-data
    android:name="com.onesignal.messaging.default_notification_icon"
    android:resource="@drawable/ic_stat_onesignal_default" />

<meta-data
    android:name="com.onesignal.NotificationAccentColor.DEFAULT"
    android:value="FFFFFF" />

不要忘记在PROJECT/android/res/中生成应用程序图标。 文件名:- ic_stat_onesignal_default 文件夹名称:-
drawable-xhdpi | drawable-xxhdpi | drawable-xxxhdpi | drawable-hdpi  | drawable-mdpi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接