HarmonyOS 鸿蒙Next消息推送收不到数据

发布于 1周前 作者 vueper 来自 鸿蒙OS

HarmonyOS 鸿蒙Next消息推送收不到数据

业务场景是收到的业务数据需要分组,用到以下两个字段。但是只能一个分组只能收到一条。一个分组如何可以收到多条数据
notifyId
每条消息在通知显示时的唯一标识。不携带或者设置-1时,推送服务自动为每条消息生成一个唯一标识;不同的通知消息可以拥有相同的notifyId,实现新消息覆盖旧消息功能。若要用于消息撤回则必填,且范围为[0, 2147483647],即非负值。详情请参见消息撤回。
appMessageId

应用消息的唯一标识,不携带时默认无appMessageId。当同一appMessageId的应用消息通过多个渠道(Push Kit,近场通讯,应用自己拉取或发送本地通知)触达时,目标终端只展示有效期内最早的一条(区别于notifyId, notifyId作用机制是新消息覆盖旧消息。特别地,notifyId和appMessageId均相同时,展示旧消息),有效期默认为24小时。长度范围为[1,64],支持大小写字母、数字、+、/、=、-、_和空白字符。 


更多关于HarmonyOS 鸿蒙Next消息推送收不到数据的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复
1、requestId:xxx,该消息成功送达了手机。

问题中提到了notifyId、appMessageId字段,因为使用了这两个字段,所以消息没有显示,可以将这两个字段关闭再测试看。

2、记录查询到是因为没有权限打开ability导致的。

参考文档检查module.json5中的skills、uris、actions配置 https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/push-send-alert-V5#section8794131614597

3、点击通知启动应用后需要接收消息中携带的uri数据

如果点击通知栏打开默认Ability, actionType可以设置为0, 同时可以在clickAction.data中指定待跳转的page页面,命名为pageUri;

然后在UIAbility的onNewWant或者onCreate方法中解析配置pageUri;

如果应用进程不存在将会触发onCreate方法,可以在onCreate方法中获取pageUri,获取到pageUri之后,应用可以选择通过跳转的方式跳转到目标页面或者直接通过loadContent方式加载目标页面;

如果应用进程存在将会触发onNewWant方法,然后可以通过跳转的方式跳转到目标页面

具体参考文档ClickAction、onCreate、onNewWant

更多关于HarmonyOS 鸿蒙Next消息推送收不到数据的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


HarmonyOS 鸿蒙Next消息推送收不到数据的问题,可能由以下几个因素导致:

  1. 权限设置:确保应用已获取消息推送的相关权限,包括通知权限、网络权限等。在鸿蒙系统的“设置”->“应用和服务”->“应用管理”中找到对应应用,检查并开启相关权限。

  2. 推送服务配置:检查应用是否正确配置了鸿蒙系统的推送服务。这包括在开发者后台正确填写应用的包名、密钥等信息,以及确保推送服务已正确集成到应用中。

  3. 网络状态:确认设备是否处于良好的网络环境中。消息推送依赖于网络,网络不稳定或断开可能导致消息无法接收。

  4. 系统更新:检查鸿蒙系统是否为最新版本。系统更新可能修复已知的推送问题,或改进推送服务的稳定性。

  5. 应用问题:尝试重新安装应用,或检查应用是否有已知的消息推送问题。

  6. 日志诊断:通过鸿蒙系统的开发者选项或日志工具,查看是否有与消息推送相关的错误日志,以便进一步定位问题。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部