HarmonyOS 关于PushKit实现消息推送的问题
通过PushKit实现应用的推送服务,主要涉及IM类和VoIP类的消息推送,在阅读官方开发文档后,有以下问题想要咨询:
1.如何实现APP仅在后台运行时才收到消息通知?
2.在REST API请求体参数说明中,仅看到消息更新是否需要提醒的标识mute,请问通知铃声可自定义吗?
3.对于VoIP消息推送,https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-voip-0000001786884960#section1190531464318的结尾处提到“铃声、震动等提醒需要开发者自行适配完成。”,铃声的设置是通过"extraData": "携带的透传数据"进行传送吗?如果是,实现是否需要申请高优先级透传消息,而在https://developer.huawei.com/consumer/cn/doc/HMSCore-Guides/faq-0000001050042183#section037425218509中描述该权限“仅服务于自身企业或政府组织单位内部问题”,请问是否有实现VoIP铃声可自定义的方式。
4.https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-voip-0000001786884960#section1190531464318中提到“应用需要在10秒内调voipCall.reportIncomingCall()接口上报通话来电状态”,调用voipCall.reportIncomingCall()接口上报通话来电状态成功后,应用可存活时长是多久呢?
5.服务端调用REST API推送VoIP呼叫消息时请求体中的extraData在应用接收呼叫消息的回调中怎么取呢?
针对问题一:PushKit暂未提供此功能;
针对问题二:通知铃声是不支持自定义的;
针对问题三:铃声不需要设置,VoIP消息铃声由应用收到消息后自行实现播放,并且铃声也不支持自定义选择。
针对问题四:调用voipCall.reportIncomingCall()接口上报通话来电状态,调用完成之后,系统会弹出VoIP横幅通知,应用可存活时长要看实际通话情况。针对问题五:从voipInfo中获取,可查看hilog.info(0x0000, ‘testTag’, ‘VoipExtAbility receive message: %{public}s’, JSON.stringify(voipInfo));日志打印的数据结构。
呼叫超时时长由应用自行设定,如果按照文档中的示例来设置,持续时间为30秒;建议将应用选择合适的时长进行设置。参考链接为:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-voip-0000001786884960#section1190531464318代码示例如下: