【FAQ】HMS Core推送服务推送角标的开发及常见问题解答

faq,hms,core,推送,服务,标的,开发,常见,问题解答 · 浏览次数 : 44

小编点评

**Q1:发送消息并显示桌面数字角标** 在发送消息时设置 `badge` 字段,其中 `add_num` 和 `set_num` 属性分别控制角标累加数字和设置角标值。 **Q2:清除数字角标** 使用 `Intent` 发送一个 `ACTION_DELETE_NOTIFICATION` 的广播,其中包含 `package`、`class` 和 `badgeNumber` 的值。例如: ```java Intent intent = new Intent(Intent.ACTION_DELETE_NOTIFICATION, null, null, "com.zrgj.push.activity.MainActivity"); startActivity(intent); ``` **Q3:设置圆点角标** 在通知栏中设置圆点角标,需要在 “角标显示方式”中选择 “圆点角标”。 **Q4:应用桌面图标角标开关无法开启或未显示开关** 在应用设置中检查“桌面图标角标”是否开启,如果未开启,则无法显示角标。 **Q5:推送消息设置了角标字段但未显示角标** 在推送消息中设置了角标字段,但如果设置了 `class` 字段,则应用角标将无法显示。 **Q6:未设置角标参数,但收到消息后显示了角标** 当未设置任何角标参数时,应用角标将自动累加 1。

正文

目录

1、发送消息并显示桌面数字角标。

2、如何清除数字角标?

3、如何设置圆点角标?

4、应用桌面图标角标开关无法开启或未显示开关。

5、推送消息设置了角标字段但未显示角标?

6、未设置角标参数,但收到消息后显示了角标。

解决方案

Q1:发送消息并显示桌面数字角标。

实现设备收到消息后显示数字角标业务,需要在发送消息时设置角标 “badge”字段,请参考以下示例及说明。

消息体示例:

{
    "validate_only": false,
    "message": {
        "android": {
            "notification": {
                "title": "test title",
                "body": "test body",
                "click_action": {
                    "type": 3
                },
                "badge": {
                    "add_num": 1,
                    "class": "com.zrgj.push.activity.MainActivity",
                    "set_num": 10
                }
            }
        },
        "token": ["pushtoken1"]
    }
}

参数说明:

“add_num”:应用角标累加数字,在已有的角标数量上累加。参数为大于0小于100的整数。

“class”:设置角标路径,参数为应用入口Activity类的全路径。样例:com.example.hmstest.MainActivity

“set_num”:设置角标数字,指定角标为设置的数量。

注意事项:

“add_num”与“set_num”字段使用其一即可,如果同时设置以set_num为准。

Q2:如何清除数字角标?

数字角标和通知消息没有关联,打开应用或者点击、清理通知栏消息并不会清理角标数字或圆点,客户端可配合业务需求使用以下方法清除。

示例代码:

Bundle extra = new Bundle();
extra.putString("package", "xxxxxx");//应用包名
extra.putString("class", "yyyyyyy");//应用入口Activity类全路径
extra.putInt("badgenumber", i);//i为0即可清除
context.getContentResolver().call(Uri.parse("content://com.huawei.android.launcher.settings/badge/"), "change_badge", null, extra);

Q3:如何设置圆点角标?

圆点角标无需开发配置,圆点角标和通知栏消息相关联,通知栏中有应用消息圆点是清除不了的,如果通知栏没有应用消息则圆点会自动清除掉。

开启方式:

圆点角标需手动开启,以HarmonyOS 3.0系统举例:设置->通知和状态栏->桌面图标角标->角标显示方式(数字角标/圆点角标)。

Q4:应用桌面图标角标开关无法开启或未显示开关。

这种情况说明未成功设置过角标,只有成功设置桌面角标后才可以开启或显示开关。

Q5:推送消息设置了角标字段但未显示角标?

1、检查是否同时设置了set_num为0,同时配置“add_num”与“set_num”以set_num数量为准。

2、检查“class”字段参数是否正确,参数为应用入口Activity类的全路径。(易错)

例如:com.huawei.codelabpush.MainActivity。

<activity android:name="com.huawei.codelabpush.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

Q6:未设置角标参数,但收到消息后显示了角标。

检查是否只设置了“class”字段,设置了“class”字段“add_num”和“set_num”都设置为空,则应用角标数字默认累加1。

例如:

"badge":{
"class":" com.huawei.codelabpush.MainActivity"
}

了解更多详情>>

访问HMS Core 联盟官网

获取HMS Core 开发指导文档

关注我们,第一时间了解 HMS Core 最新技术资讯~

与【FAQ】HMS Core推送服务推送角标的开发及常见问题解答相似的内容:

【FAQ】HMS Core推送服务推送角标的开发及常见问题解答

### 目录 1、发送消息并显示桌面数字角标。 2、如何清除数字角标? 3、如何设置圆点角标? 4、应用桌面图标角标开关无法开启或未显示开关。 5、推送消息设置了角标字段但未显示角标? 6、未设置角标参数,但收到消息后显示了角标。 ### 解决方案 #### Q1:发送消息并显示桌面数字角标。 实现

【FAQ】关于华为推送服务因营销消息频次管控导致服务通讯类消息下发失败的解决方案

一. 问题描述 使用华为推送服务下发IM消息时,下发消息请求成功且code码为80000000,但是手机总是收不到消息; 在华为推送自助分析(Beta)平台查看发现,消息发送触发了频控。 二. 问题原因及背景 2023年1月05日起,华为推送服务对咨询营销类消息做了单个设备每日推送数量上限管理,具体

【FAQ】推送服务常见问题及解决方案

一、推送成功收不到消息,推送返回:{"message":"success","requestID":"1523868*****2842718","resultcode":0} 排查步骤: 1、网络不稳定,切换稳定网络进行测试; 2、检查手机是否为EMUI8.0.0系统,如果是早期的EMUI8.0,则

【FAQ】申请运动健康服务验证环节常见问题及解答

华为 HMS Core 运动健康服务(HUAWEI Health Kit)提供原子化数据开放。应用在获取用户数据授权后,可通过接口访问运动健康数据,对用户数据进行读写等操作,为用户提供运动健康类数据服务。 开发者应用在开发和测试阶段访问用户运动或健康数据时,会有100个用户的数量限制,需要通过“申请

【FAQ】关于华为地图服务定位存在偏差的原因及解决办法

一、 问题描述: 华为地图服务“我的位置”能力,在中国大陆地区,向用户展示他们在地图上的当前位置与用户的实际位置存在较大的偏差。 具体差别可以查看下方的图片: 二、 偏差较大的原因: 华为Map SDK在中国大陆使用的地理坐标系是GCJ02。 点击“我的位置”控件,获取的定位经纬度的地理坐标系是WG

【FAQ】在华为鸿蒙车机上集成华为帐号的常见问题总结

随着新一代信息技术与汽车产业的深度融合,智能网联汽车正逐渐成为汽车产业发展的战略制高点,无论是传统车企还是新势力都瞄准了“智能座舱”这种新一代人机交互方式。面对竞争如此激烈的车机市场,华为鸿蒙车机系统的出现,给消费者带来了不同凡响的便捷使用感受,这得益于华为在硬件、软件和场景优化上的技术优势,用户只

【FAQ】申请Health Kit权限的常见问题及解答

华为运动健康服务(HUAWEI Health Kit)提供原子化数据开放,用户数据被授权获取后,应用可通过接口访问运动健康数据,对相关数据进行增、删、改、查等操作。这篇文章汇总了申请开通Health Kit测试权限的常见问题,并给出了详细解答,希望为开发者提供相关参考。 (1) 申请Health K

【FAQ】集成分析服务的常见问题及解决方案

常见问题一:如何验证Analytics是否上报/接入成功?以及关键日志含义是什么? 在初始化Analytics SDK前添加SDK日志开关如下: HiAnalyticsTools.enableLog (); 2.初始化SDK代码如下: HiAnalyticsInstance instance = H

【FAQ】获取Push Token失败,如何进行排查?

一、 获取Push Token的方式 获取Push Token有两种方式:一种是调用getToken方法向Push服务端请求Token,当getToken方法返回为空时,Token可通过onNewToken方法返回,因此需要实现onNewToken方法;另一种是自动初始化,Token通过onNewT

【FAQ】统一扫码服务常见问题及解答

1.隐私政策是怎么样的?收集哪些信息? 关于Scan Kit的隐私政策及收集的信息,请查看SDK隐私安全说明。 Android:SDK隐私安全说明 iOS:SDK隐私安全说明 2.如何使用多码识别?多码模式下如何实现指定条码?多码模式的坐标支持返回坐标么?多码模式下实现自动放大? 1)统一扫码服务支