即使iPhone未连接到Internet,也会收到设备令牌

我正在testing我的iOS应用程序,我发现一个有趣的事情,即使我的手机处于飞行模式,我也closures了WIFI,我的应用程序能够在注册推送通知后收到设备令牌。

即使从iPhone中删除应用程序及其相关证书后,我也尝试过。

但得到相同的结果。

怎么可能,有什么想法?

提前致谢。

这是来自APNS编程指南:

每次启动应用程序时,通过请求设备令牌并将其传递给提供者,可以帮助确保提供者拥有设备的当前令牌。 如果用户将备份恢复到除创build备份以外的设备或计算机(例如,用户将数据迁移到新设备或计算机),则必须至less启动一次该应用程序再次收到通知。 如果用户将备份数据恢复到新设备或计算机,或者重新安装操作系统,则设备令牌将发生更改。 此外,永远不要caching设备令牌并将其提供给您的提供商; 每当需要时总是从系统获取令牌。 如果您的应用程序先前已注册,则调用registerForRemoteNotificationTypes:将导致操作系统立即将设备令牌传递给委托,而不会产生额外开销。

这意味着如果您的应用程序已经注册了推送通知,则调用registerForRemoteNotificationTypes不会访问APNS服务器。

卸载应用程序的事实不会从APNS取消注册。 您可以通过在卸载应用程序后立即调用反馈服务来certificate自己。 在这种情况下,您不会从反馈服务获取设备令牌,因为APN服务不知道您卸载了该应用程序。 只有当您在卸载应用程序后向设备发送通知时,APN服务才会知道该应用程序已被卸载。