目前,iOS开发的app推送功能较安卓的前台显示不够完善。具体表现如下:
(一)iOS推送结果:
1. app在前台运行时,不弹出推送框,但是app通过代码可以获取到推送的消息。
2. app在后台运行或者杀死状态时,会弹出推送框并且可以通过代码获取到推送的消息。
3. app在前台和后台运行时,推送上报触发的是didReceiveRemoteNotification事件。
4. app在杀死状态时,推送上报触发的是didFinishLaunchingWithOptions事件。
(二)用户能接收到的如下:
1. 用户进入App,按home键,发送信鸽/JPush等消息,可以接收到弹窗和通知中心的通知;
2. 用户进入App,按home键,进程杀掉,可以接收到弹窗和通知中心的通知;
3. 用户进入App,保持在App中,后台可以接收到信鸽/JPush消息,但是前台没有弹窗和通知中心通知。
(三)iOS注意事项
1、信鸽/JPush等第三方,只能保证将消息转交APNS,因此若APNS出错会产生一定得推送时间误差。
2、APNS只为离线终端保存一条消息,所以离线终端上线后仅能收到离线期间最新的一条消息。
3、受APNS和iOS的限制,效果统计功能可能会有一定得统计误差。