当APNS仅存储一个以防设备脱机时,whatsapp如何接收多个通知?

cry*_*sis 12 apple-push-notifications ios whatsapp

根据官方Apple文档,如果设备处于脱机状态,APNS(Apple推送通知服务)仅存储最后一个通知.

Apple推送通知服务包括执行存储转发功能的默认服务质量(QoS)组件.如果APN尝试发送通知但设备处于脱机状态,则QoS会存储通知.它在设备上每个应用程序仅保留一个通知:从该应用程序的提供程序收到的最后一个通知.当离线设备稍后重新连接时,QoS将存储的通知转发到设备.QoS会在删除之前保留有限时间段内的通知.

那么当设备上线时,whatsapp等应用程序如何从多个用户发送消息?如果设备在线,这些消息将作为单独的通知收到.

Ron*_*zen 7

似乎在iOS 8上有这个问题的更新,即使您的用户手动杀死它,您的应用也会因为推送而在后台唤醒.看看这个:在iOS8中使用PushKit在后台唤醒你的应用程序.

这意味着您可以向您的应用发送通知,一旦重新连接,它将被操作系统唤醒,并能够与您的服务器通信.然后,您可以实现逻辑以将其在设备脱机时丢失的所有推送消息发送给它.

我不得不承认我还没有尝试过,但听起来这可能是你所描述的问题的解决方案.