使用APNS,当设备注册时,它注册的令牌有多长时间?应用程序安装的整个时间?我似乎记得在文档中的一个注释说它只有在同步/重置之前才有用,但是再次查看文档我找不到那个注释(并且它在我的(不可否认的非广泛的)测试中并不成立) 。任何人都可以确认每个令牌的有效期是多久吗?
答案 0 :(得分:5)
除了更改设备被清除的时候,在使用Xcode的设备上调试时,app /设备组合的令牌也会发生变化,而当从发布的(应用商店)版本运行相同的应用时该应用程序。
最近,当我为自己的手机存储多个设备令牌时,我遇到了问题。我的数据库中有两个令牌用于一部手机。当我使用Xcode开发时,一个被分配给我,另一个是从应用程序的发布版本分配的。
问题是调试令牌仅适用于沙箱服务器,而发布令牌仅适用于生产服务器。当我测试时,我正在向两个令牌发送警报,而Apple会丢弃我的SSL连接,因为其中一个无效。
话虽如此,我相信Apple保留随时更改它们的权利,这就是为什么有必要在每次启动应用程序时请求令牌。
我希望有所帮助。
答案 1 :(得分:1)
看起来它只会在擦除设备时发生变化。在应用程序的文档中找到了这个:didRegisterForRemoteNotificationsWithDeviceToken:
请注意,设备令牌是 与uniqueIdentifier不同 UIDevice的财产,因为 安全和隐私的原因,它必须 擦除设备时更改。