在我的应用中,我有以下流程。当它启动时,它会询问是否接收推送通知。如果单击“是”,则它将获取deviceToken并将其存储为NSUserDefault。该应用程序的一部分正在提出请求。这些请求被添加到XML文件中,其中包含deviceToken的一个部分,以便PHP脚本稍后可以根据XML中的deviceToken发送请求通知。
我最近实施了:
NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
[[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];
[appDomain release];
这样用户就可以清除他们可能不再需要的其他一些NSUserDefault。问题是这也清除了deviceToken。我怎样才能再次获取deviceToken,而不必使用App Delegate中的didRegister代码?
答案 0 :(得分:0)
不建议将设备令牌存储在您的应用中,它可能会从APNS更改并可能导致通知失败,您应该将其存储在全局变量中并在每次启动应用时更新它