应用程序删除推送通知的行为

时间:2015-10-07 12:25:44

标签: ios objective-c push-notification apple-push-notifications

我在我的应用中实施了推送通知。它工作正常。我的问题是 1)删除应用程序后,Apple服务器如何知道停止向设备发送推送。是否有任何服务通知Apple服务器。 2)如果设备没有网络连接,那么Apple服务器将如何通知设备删除应用程序。

提前致谢。

1 个答案:

答案 0 :(得分:0)

来自文档:

  

Apple推送通知服务包括反馈服务   提供有关失败的远程通知的信息。当一个遥控器   无法发送通知,因为预期的应用程序没有   在设备上存在,反馈服务将该设备的令牌添加到   它的清单。

     

[...]

     

作为提供商,您负责远程的以下方面   通知:

     

[...]定期与反馈服务联系并获取   已重复报告的那些设备的当前列表   失败的交付尝试。然后停止发送通知给   与这些应用相关联的设备。请参阅反馈服务了解更多信息   信息。

因此,第三方提供商(Parse,Urban Airship等)负责定期与Apple反馈服务连接,并获取反复报告失败传递尝试的当前设备列表。如果已重新注册给定设备令牌,则会再次将推送发送到设备(自生成反馈条目以来时间戳已更新)。

因此,根据我的理解,反馈服务不区分您提到的两个单独案例(丢失连接和应用程序删除)。在这两种情况下,给定设备的令牌都将被添加到反馈服务的令牌列表中,这再次表明不应该发送推送。

来源: https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/CommunicatingWIthAPS.html#//apple_ref/doc/uid/TP40008194-CH101-SW3