iOSAPNs推送和VoIP推送

iOS APP 语音播报技术优化方案

1. 当前的问题和建议方案


目前开APP具备类似微信、支付宝的到账提示和语音播报功能。最初使用了第三方服务极光推送,后来增加了iOS的新特性Notification Service Extension,实现了iOS在APP后台、锁屏甚至APP被kill的情况下依然可以及时进行语音播报。

但是前段时间iOS 12.1 系统更新后,有商户不断反馈没有到账推送和语音播报,经过排查初步判断iOS 12.1+ 对Notification Service Extension的进行了限制,APP不在前台活动时,收到推送消息后无法再获取媒体权限,导致无法完成语音播报,通知消息也无法正常显示。
目前的方案是对iOS系统进行了区分,12.1之前的版本可以正常语音播报,12.1+ 的系统下APP在前台时可以进行语音播报,其它情况下只有通知提示。

此期间,移动端也在寻找新的方案优化体验,经过我们评估,现在建议使用和升级的技术方案是 VoIP推送,也是目前微信使用的到账语音播报方案。

VoIP和APNs 是Apple 提供的两套不同的推送系统。
APNs推送是没有应用场景限制的Apple通用推送通知服务,但是仅有提示音和通知栏展示,且有一定延时性和丢失率。

VoIP推送是专门供具备VoIP功能的APP使用的推送系统,延时低,并且在收到推送时可以激活APP以实现及时、流畅的网络语音通话。但是APP必须有VoIP类的功能才能获得批准上架App Store

APNs推送的缺点
1、iOS 12.1 以后无法语音播报
2、Apple APNs本身就有有延时和丢失率,再加上和极光server的通信过程,丢失率比VoIP高很多
3、使用的 极光推送对推送频率有限制,交易量过大会受到限制
4、开张吉祥和OEM的每个APP都需要维护极光推送的APP配置,工作繁琐
VoIP推送的优点
1、收到推送时可激活APP,获取媒体权限,在锁屏、APP挂起、APP被kill的情况下都可以进行语音播报
2、延时低,1秒左右送达,几无丢失
3、APP server直接和Apple 服务器通信,可控性强
4、积累成熟的技术方案

2. 改用VoIP方案需要的工作


iOS APP端
1、配置VoIP权限和环境,实现接收VoIP推送消息
2、开发语音呼叫的功能用于过审。目前的想法是开发一个 在线客服的壳子,提供语音通话的UI。若无法过审再开发真正的语音通话功能。
3、兼容原来的 极光推送Notification Service Extension
APP服务器
1、对接Apple的 Push Notification Service 接口 官方文档
2、在相关API的版本、Device token的存储、调用推送接口上做兼容开发,旧版本iOS APP使用极光推送,新版本使用VoIP推送

3. APNs推送流程


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值