如何在华为手机上显示应用图标徽章数字

4
在华为设备(Android 9)上,我的应用程序无法在应用程序图标中显示推送通知的数字。在设备设置中,在“应用程序图标徽章”下,我可以在“徽章显示模式”之间切换“数字”和“点”。如果我使用点,一切正常,并且会显示一个点,但是如果我使用数字,则我的应用程序不在列表中,图标上也没有显示任何内容。
我已经测试了适用于华为的以下权限,但没有成功。
<uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/>
<uses-permission android:name="com.huawei.android.launcher.permission.READ_SETTINGS"/>
<uses-permission android:name="com.huawei.android.launcher.permission.WRITE_SETTINGS"/>

我是否需要使用其他权限或实现特殊功能才能显示数字并在应用图标上显示数字?

2个回答

1
Push Kit 提供了一个在服务器上设置标记的 API。您可以在消息中封装徽章参数。在发送推送请求时,您可以设置 add_numclassset_num 参数来设置徽章。
在服务器上设置徽章的示例代码:
{
    "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"
        ]
    }
}

更多信息,请参见文档

0

尝试使用 Notification.Builder setNumber (int number)。


我已经尝试了setNumber。它在三星等其他设备上可以工作,但在华为上无法工作。 - nasibu
@dilip,你找到解决这个问题的方法了吗? - asadullah

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