HarmonyOS 鸿蒙Next消息推送收不到数据
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
问题中提到了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