移动推送那些事:
IOS:
因为有苹果的系统推送,所以推送的到达率、到达及时率都比较好
Android:
因为Google被墙了,所以系统推送无法使用,通常都是使用第三方移动推送sdk(极光、个推、腾讯、阿里等等)。
因为没有系统推送,又因为一旦应用切到后台,或者应用进程被杀,推送线程无法工作,所以Android的推送的到达率、到达及时率相对IOS较差。针对这一点,技术上又采取了一些手段:
1.工程部有公告说想建立全国的Android的系统推送(时间点不确定,性能不确定,因为国内的Android手机保有量非常高)
2.小米手机系统、华为手机系统等等又建立了针对各自手机系统的系统推送,来保证各自手机平台推送的到达率、到达及时率。
3.有些第三方推送sdk,有“拉起”功能,比如A应用装了极光,B应用挂了,但是B应用中有极光sdk,A应用就会尽可能尝试去唤醒B应用中的极光sdk,来保证一定的推送的到达率、到达及时率。
4.短信融合,比如支付消息推送不及时的时候,会有短信提醒(比如支付宝)
...等等其他措施
推送配置:
IOS:
可以配置应用特定的通知声音(放在app bundle或沙盒Library/Sounds目录下),技术上使用的是默认提示音(业务上可以提需求调整)
Android:
推送提醒方式,技术上默认声音和振动(业务上可以提需求调整)
离线推送:
技术上默认保存离线消息,保存12小时,产品角度防止过期的无意义信息骚扰用户(业务上可以提需求调整)
具体实践注意点:
需要开启应用的通知权限,才能接收推送
具体实践中,Android还有比价少的一些特殊情况收不到推送,需要具体排查