android - 通知托盘中的 Android Bot 而不是启动器图标 - FCM
问题描述
我正在使用 ionic3 构建一个混合应用程序并使用这个fcm 推送通知 cordova 插件来接收通知
我已经能够实现通知登陆设备和被触发的应用程序(使用标题、正文、自定义等数据)
但是,每当发送通知时,通知图标都会显示为 android bot。像
我的启动器图标是一个不同的图标,可以正常工作
为了启动通知,我使用以下 json向https://fcm.googleapis.com/fcm/send发送 curl 请求 :
{
"to":"device_token",
"priority":"high",
"notification":{
"title":"New Notification!",
"body":"Test",
"sound":"default",
"click_action":"FCM_PLUGIN_ACTIVITY",
"icon": "icon" //optional piece
},
}
icon.png 存在于所有android/res/mipmap*
目录中。
此外,我在我的 AndroidManifest.xml参考中添加了以下元
<meta-data android:name="com.google.firebase.messaging.default_notification_icon" android:resource="@mipmap/icon" />
另外,我尝试从设备中读取 logcat。每当我在我发布到 fcm 的 json 中传递图标参数时,我都会看到以下日志
06-12 23:43:38.457 22257 22303 W FirebaseMessaging: Icon resource icon not found. Notification will use default icon.
但是每当我不通过 json 中的图标时,我在 logcat 中看不到上述消息。
我想我在某处遗漏了一件简单的事情,但无法弄清楚请帮助我一些指示,指导我可能错在哪里
提前致谢
解决方案
最后我能够弄清楚这个问题。我不得不深入了解 ADB 日志以找到以下内容:
06-18 20:46:59.898 11432 11470 E FirebaseMessaging: Icon with id: 2131165319 uses an invalid gradient. Using fallback icon.
然后我得到了这个的参考
经过进一步调查,我发现我的 project.properties 和 FCMPlugin.gradle 指向 firebase 11.8.0
在这两个地方将其更改为 11.0.1 并重建应用程序,我能够收到带有图标的通知
推荐阅读
- r - 用均值条形图及其标准差 ggplot2 总结数据框
- django - 是否可以在 DjangoRestFramework 中实现 websockets?
- keras - GridsearchCV 损失不等于 model.fit() 损失值
- .net-core - 在 .NET core razor 页面中使用查询参数路由旧版 URL
- msal.js - 在 msal loginRedirect 方法期间获取“未找到状态”
- javascript - PHP中的AES加密和Javascript中的解密
- android - addTextChangedListener onTextChanged 计数在 android 版本 10 上不起作用
- javascript - 使用 Proxy over Set
- java - FailedToCreateRouteException: 未能创建路由.. at: >>> SetHeader[null, constant{}] <<< in route: 因为 headerName 必须指定
- c# - 如何在 C# 中双面打印 Word.Document?