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推送流程


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值