使用APN的应用程序似乎习惯于在应用程序启动时从操作系统获取令牌。但是,如果一个应用程序已经获得它一次,那么它是否有任何重点需要再次获取它(如果它已经这样做,那么将其发送到服务器)。
从OS获得的APN令牌能否发生变化?
答案 0 :(得分:9)
您的问题的答案在Apple文档(本地和推送通知编程指南)中:
每次启动应用程序时,通过请求设备令牌并将其传递给提供程序,可以帮助确保提供程序具有设备的当前令牌。如果用户将备份还原到创建备份的设备或计算机以外的设备或计算机(例如,用户将数据迁移到新设备或计算机),则他或她必须至少启动一次应用程序再次收到通知。如果用户将备份数据还原到新设备或计算机,或重新安装操作系统,则设备令牌会更改。此外,永远不要缓存设备令牌并将其提供给您的提供商;始终在需要时从系统获取令牌。如果您的应用程序先前已注册,则调用registerForRemoteNotificationTypes:会导致操作系统立即将设备令牌传递给代理,而不会产生额外的开销。