Apple APNS流与未注册的设备

时间:2014-08-05 13:08:05

标签: ios apple-push-notifications

我在Apple的开发者领域找不到任何有关APNS未注册设备问题的决定性答案。

假设设备已从APSN服务取消注册,我是否会在流中获得有关未注册的任何响应,或者我可以知道的唯一方法是使用反馈服务?

如果实际上反馈服务是唯一的解决方案,建议采用何种方式来处理此成功 - >失败状态?

更清楚的是,如果我在流中没有得到任何响应,则意味着“可能”(使用Apple)到达目的地但是反馈表明它是失败的。

1 个答案:

答案 0 :(得分:4)

如果设备通过您的代码从APNS取消注册(即您的应用程序代码启动了取消注册),您的应用程序可以通知您的服务器删除设备令牌(与注册后通知服务器存储令牌的方式相同) )。

否则,服务器知道设备令牌不再相关的唯一方法(由于从设备卸载应用程序或用户禁用应用程序的推送通知)是通过在反馈服务中获取设备令牌

对于流中的响应,如果邮件无效,则只会收到错误响应。由于令牌无效,它可能无效,但无效令牌是在当前推送环境中永远无效的令牌(与反馈服务中返回的令牌不同,后者曾经有效,如果应用程序是有效的,则可能再次有效重新安装)。

  

更清楚的是,如果我在流中没有得到任何响应,则意味着它“可能”(使用Apple)到达目的地但后来反馈表明它是失败的。

如果Apple未在流中发送任何响应,则表示该消息有效,Apple将尝试将其传送到设备。如果,当Apple尝试传递消息时,他们发现应用程序已从设备中卸载,则下一次对反馈服务的调用将返回该设备的设备令牌。