-
-
[原创]【FAQ】HarmonyOS SDK 闭源开放能力 —Push Kit(4)
-
发表于: 2024-10-29 14:02 3338
-
1.问题描述:
目前华为推送API使用的是v2或者v1版本,请问目前最新的鸿蒙next使用v3版本是否兼容v2或者v1,反过来将v2或者v1的api可以推送鸿蒙next的设备吗?
解决方案:
v3接口兼容向非HarmonyOS NEXT设备推送,老版本接口不兼容向HarmonyOS NEXT设备推送。
2.问题描述:
获取Push Token报错 Get push token catch error: 1000900010 Illegal application identity.
解决方案:
检查以下配置项是否正确:
1、确认AppGallery Connect上配置的应用签名证书指纹与应用实际证书是否一致, API 9以上应用需要选择“添加公钥指纹 (HarmonyOS API 9及以上)”的方式配置。
031K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1k6i4k6W2L8r3!0H3k6i4u0Q4x3X3g2Z5N6h3q4%4k6h3W2Q4x3X3g2U0L8$3#2Q4x3V1k6U0L8$3&6K6N6h3#2W2M7W2)9J5c8X3y4F1i4K6u0r3k6r3!0U0i4K6u0r3j5i4m8H3i4K6u0r3j5h3N6U0i4K6u0V1K9r3g2D9M7q4)9J5k6s2y4A6k6$3&6S2N6s2g2J5k6g2)9J5k6r3W2F1k6X3!0Q4x3X3b7H3x3o6l9H3x3o6l9I4y4U0t1^5y4e0j5$3y4K6b7^5i4K6t1K6M7$3g2U0N6r3W2G2L8U0f1I4z5o6p5H3x3e0V1I4y4e0x3#2x3e0p5`.
2、在项目模块级别下的src/main/module.json5(例如entry/src/main/module.json5)中配置client_id,需要使用项目设置->常规页面->应用->OAuth 2.0客户端ID(凭据)中的Client ID。
6b8K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1k6i4k6W2L8r3!0H3k6i4u0Q4x3X3g2Z5N6h3q4%4k6h3W2Q4x3X3g2U0L8$3#2Q4x3V1k6U0L8$3&6K6N6h3#2W2M7W2)9J5c8X3y4F1i4K6u0r3k6r3!0U0i4K6u0r3K9r3q4J5L8h3!0F1P5h3!0K6i4K6u0V1k6%4g2A6k6r3g2K6i4K6u0r3M7s2g2K6K9q4)9J5k6s2m8J5k6i4m8S2M7X3q4@1K9h3!0F1M7#2)9J5k6o6l9H3x3o6l9H3x3o6p5%4x3U0M7^5z5o6f1J5y4e0m8Q4x3U0y4K6k6h3y4@1K9h3!0F1y4K6V1J5y4U0b7I4y4K6x3J5z5e0p5&6
注意:配置证书指纹后生效需要一定时间,建议30-60分钟后重试。
3.问题描述:
push-type=0的普通消息如果要带图片,是否要先调图片风控接口?
图片风控接口返回的expireTime最长截止时间是多久?
解决方案:
1、目前发送 push-type:0 通知消息未限制必须图片风控,图片符合文档说明规格即可。
f63K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1k6i4k6W2L8r3!0H3k6i4u0Q4x3X3g2Z5N6h3q4%4k6h3W2Q4x3X3g2U0L8$3#2Q4x3V1k6U0L8$3&6K6N6h3#2W2M7W2)9J5c8X3y4F1i4K6u0r3k6r3!0U0i4K6u0r3K9r3q4J5L8h3!0F1P5h3!0K6i4K6u0V1k6%4g2A6k6r3g2K6i4K6u0V1g2U0g2Q4x3V1k6H3N6i4y4Z5i4K6u0V1M7$3g2F1k6q4)9J5k6r3q4D9k6i4u0@1i4K6u0V1x3o6l9H3x3o6l9H3x3e0R3$3x3U0b7H3y4o6t1&6x3#2)9J5k6q4j5#2i4K6t1K6M7$3g2U0N6r3W2G2L8U0j5J5x3o6p5I4y4K6x3&6x3o6l9I4
2、expireTime 一般为7天。
4.问题描述:
应用在AppGallery Connect申请了调试证书、开启了推送服务,app项目中配置了调试证书签名,应用也配置了client_id,但是获取token失败,报错信息 get token fail:, {error.name:Error, error.message:Illegal application identity.} ,json:{"code":1000900010}}
解决方案:
1,在API管理中,打开相关服务的API。会有一定的延迟,一般有10分钟左右。
2, 应用在AppGallery Connect上创建时未选择HarmonyOS应用类型。
3,module.json5文件中metadata节点下clientid写正确。需要直接写client_id的信息,不能通过$符引用资源文件中的值,当前无法解析这种引用方式。
4,签名证书使用这个选项中的 配置方式 “选择SHA256公钥指纹‘’。
b、配置证书指纹: dc0K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1k6i4k6W2L8r3!0H3k6i4u0Q4x3X3g2Z5N6h3q4%4k6h3W2Q4x3X3g2U0L8$3#2Q4x3V1k6U0L8$3&6K6N6h3#2W2M7W2)9J5c8X3y4F1i4K6u0r3k6r3!0U0i4K6u0r3j5i4m8H3i4K6u0r3j5h3N6U0i4K6u0V1K9r3g2D9M7q4)9J5k6s2y4A6k6$3&6S2N6s2g2J5k6g2)9J5k6r3W2F1k6X3!0Q4x3X3b7H3x3o6l9H3x3o6l9I4y4U0t1^5y4e0j5$3y4K6b7^5i4K6t1K6M7$3g2U0N6r3W2G2L8U0f1I4z5o6p5H3x3e0V1I4y4e0x3#2x3e0p5`. 如果以上方式无法解决,请通过如下方式抓取日志以便分析,联系方式243K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1k6i4k6W2L8r3!0H3k6i4u0Q4x3X3g2Z5N6h3q4%4k6h3W2Q4x3X3g2U0L8$3#2Q4x3V1k6U0L8$3&6K6N6h3#2W2M7W2)9J5c8X3y4F1i4K6u0r3M7%4g2H3M7r3!0J5N6q4)9J5c8X3k6W2k6h3c8T1j5h3y4C8i4K6u0r3i4K6t1K6i4K6u0r3i4@1g2r3i4@1u0o6i4K6W2m8
1. 执行:hdc hilog > xxxx.log
2. 复现场景
3. 停止脚本执行
4. 在目录下获取日志信息
5.问题描述:
推送VoIP呼叫消息和音视频界面是都内置的吗?开发者是否只需配置一个UI其他方面不用考虑?
解决方案:
1、音视频页面应用需要自定义,文档示例代码提供的页面效果仅供开发参考,不代表最终效果。
2、VoIP呼叫消息负责拉起应用的进程,在进程内完成通话状态上报弹出呼叫横幅通知,监听通话状态回调,被呼叫页面加载等操作。铃声、震动、音视频效果等需要开发者自行适配完成。
bd3K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1k6i4k6W2L8r3!0H3k6i4u0Q4x3X3g2Z5N6h3q4%4k6h3W2Q4x3X3g2U0L8$3#2Q4x3V1k6U0L8$3&6K6N6h3#2W2M7W2)9J5c8X3y4F1i4K6u0r3k6r3!0U0i4K6u0r3K9r3q4J5L8h3!0F1P5h3!0K6i4K6u0V1k6%4g2A6k6r3g2K6i4K6u0V1g2U0g2Q4x3V1k6H3N6i4y4Z5i4K6u0V1N6X3!0A6M7q4)9J5k6q4j5#2
6.问题描述:
通知扩展消息体现:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | push - type : 2 / / Request Body { "payload" : { "extraData" : "通知扩展场景携带的额外数据" , "notification" : { "category" : "EXPRESS" , "title" : "通知标题" , "body" : "通知内容" , "clickAction" : { "actionType" : 0 } } } } |
notification这部分信息是否会以通知方式展示?如果展示,那么和onReceiveMessage要返回的RemoteNotificationContent有什么区别?
extraData这部分信息是不是通过onReceiveMessage方式传递?
解决方案:
- notification-----这部分信息是否会以通知方式展示?
会在RemoteNotificationContent中return中展示
- extraData------这部分信息是不是通过onReceiveMessage方式传递?
扩展消息是可以通过onReceiveMessage 获取。
- onReceiveMessage如果返回空是什么结果?
有可能是没有扩展消息的权限