安卓/华为的朋友们好!
我正在为Android设计一款应用程序。我已经使用Firebase向安装应用程序的设备发送推送通知。这一切都很好,工作也很好——我可以把通知看作一个有标题、正文和图标的互动程序。当我点击应用程序时,我可以导航到它。
但我对应用程序图标通知徽章有问题。默认情况下,它被设置为点(华为P30 Pro,EMUI 11(。当我收到通知时,圆点就会出现。一切都很好。
但当我将通知徽章类型更改为数字时,它不会显示(1(。我可以看到其他一些应用程序也是如此。主要区别在于,DOT BADGE列表包含所有应用程序(包括我的应用程序(,而NUMBER BADGE名单包含相当多的应用程序(电话、消息和其他一些第三方应用程序,但不是全部(。
所以我的问题是——我应该在应用程序清单或其他地方设置一些设置,以便查看编号的徽章吗?
建议您使用华为推送套件。
根据该文件,Push Kit提供了一个API,用于在服务器上设置徽章。徽章号码表示未读邮件的数量。您可以在消息中封装徽章参数。对于通知消息,Push Kit将在应用程序图标上显示徽章编号。对于数据消息,您的应用程序需要调用getBadgeNumber方法从每条消息中获取徽章参数并显示徽章编号。
在服务器上设置徽章的示例代码:
{
"validate_only": false,
"message": {
"notification": {
"title": "message title ",
"body": "message body"
},
"android": {
"notification": {
"click_action": {
"type": 2,
"url": "https://example.com"
},
"badge": {
"add_num": 1,
"class": "com.huawei.codelabpush.MainActivity",
"set_num": 10
}
},
"ttl": "1000"
},
"token": [
"pushtoken1"
]
}
}
有关客户端徽章开发的详细信息,请参阅华为桌面徽章界面说明。
注意:如果您对Push套件有任何疑问,请随时与我们联系。