0

在我的应用程序中,我有以下流程。当它启动时,它会询问是否接收推送通知。如果单击“是”,它将获取 deviceToken 并将其存储为 NSUserDefault。该应用程序的一部分正在发出请求。这些请求被添加到一个带有 deviceToken 部分的 XML 文件中,以便 PHP 脚本稍后可以根据 XML 中的 deviceToken 发送请求通知。

我最近实现了:

NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
        [[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];
        [appDomain release];

这样用户就可以清除一些他们可能不再需要的其他 NSUserDefaults。问题是这也清除了 deviceToken。我如何才能再次获取 deviceToken,而不必使用我在 App Delegate 中拥有的 didRegister 代码?

4

1 回答 1

0

不建议将设备令牌存储在您的应用程序中,它可能会从 APNS 更改并可能导致发送通知失败,您应该将其存储在全局变量中,并在每次启动应用程序时更新它

于 2014-07-22T19:52:55.730 回答