【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(2)

打印 上一主题 下一主题

主题 1003|帖子 1003|积分 3009

1.题目形貌:
开发服务端推送,客户端能收到离线推送,但是推送收到的关照只能从手机顶部下拉看到,无法收到一个顶部的弹框。叨教是什么原因?
解决方案:
大概原因一:
消息提醒的方式与消息类别有关,好比:
a. 服务与通讯类的提醒方式为:锁屏、铃声、振动。
b. 资讯营销类的消息提醒方式为:静默关照,仅在关照中心展示消息。
当前开发者的消息类型应该是资讯营销类的消息,消息提醒方式与消息类别的对应关系请参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-noti-classification-0000001727885246#section15216442535。
大概原因二:
如果发送的消息确实是服务与提醒类的消息 ,那么可以通过申请自分类来实现,请参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-noti-classification-0000001727885246#section0965171625420。
大概原因三:
当前横幅关照只有服务与提醒类别下的“IM”和“VOIP”消息才支持,请参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-noti-classification-0000001727885246#section4972113418541。
2.题目形貌:
https://developer.huawei.com/consumer/cn/doc/harmonyos-references/push-servicenotification-0000001727770540
,在serviceNotification.requestSubscribeNotification接口参数中entityIds实体id列表,这个列表的数据是怎么确定的?
解决方案:
entityIds是订阅消息的模板ID,请参考消息订阅页面中的列表信息,对应文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-alert-subscribe-0000001737579632#section170214152。
3.题目形貌:
调用pushService.getToken()报错“dlopen_impl load library header failed for /system/lib64/module/hms/core/push/libpushservice.z.so”。
大部分手机可以调用,某些设备不行。
解决方案:
通过现有日志分析,是体系底层的一个已知题目造成的。因NOH在单框架不再演进,发起同伴切换ALN。
4.题目形貌:
为什么设置uris会导致收不到HarmonyOS推送?如果要通过设置uris实现类似iOS的url scheme功能,该怎么做才气不影响推送?
解决方案:

  • uris和action可以同时存在。不过actions和uris不能在同一个对象中,须要在不同的对象中才可以。
  • 以首页的skills为例,下方的skills设置是可以正常收到消息的且点击也没有题目:
  1. "skills": [
  2. {
  3. "entities": [
  4. "entity.system.home"
  5. ],
  6. "actions": [
  7. "action.system.home",
  8. "action.ohos.push.listener",
  9. ]
  10. },
  11. {
  12. "uris": [
  13. {
  14. "scheme": "https",
  15. "port":"8080",
  16. "host": "com.xx.pushsvc.impl",
  17. "path": "notify_detai"
  18. }
  19. ]
  20. }
  21. ]
复制代码
5.题目形貌:
为什么后台推送透传消息(push-type: 6),自助查询提示”其他错误,发起您接洽技术支持“?
解决方案:
大概原因:服务端推送使用的token与设备生存的token不同等,大多数环境是因为您的测试机重新获取了新的token,但是他们还使用旧的推送导致的。
解决方法:重新获取最新token进行推送。
6.题目形貌:
获取Push token时,调用const pushToken: string = await pushService.getToken();报如下错误:
1000900010 APP身份验证失败,已设置client_id。叨教怎样解决?
解决方案:
大概原因:未在AGC平台设置证书指纹,可以看一下文档的证书指纹的生成和设置章节。
请从以下几点排查:

  • 在AGC API管理中,打开相关服务的API。一样平常存在十分钟左右的耽误。
  • module.json5文件中metadata节点下clientid誊写正确。须要在内里直接写client_id的信息,不能通过$符引用资源文件中的值,当前无法剖析这种引用方式。
  • “签名证书使用”选项中的设置方式为“选择SHA256公钥指纹‘’。
    a. 生成设置指纹:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-preparations-0000001727885250#section388942317518
    b. 设置证书指纹:https://developer.huawei.com/consumer/cn/doc/app/agc-help-signature-info-0000001628566748#section5181019153511
    如果以上三种方式仍无法您的解决题目,请通过以下方式将日志提供给技术支持人员解决:
  • 执行下令:hdc hilog > xxxx.log
  • 复现场景。
  • 停止脚本执行。
  • 在目录下获取日志信息。
【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(1)

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

汕尾海湾

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表