点击推送通知的"Don't Allow"按钮时获取设备令牌



当用户点击"不允许"按钮时,我有点难以获得设备令牌。

我只能在点击"OK"按钮时获得设备令牌。——这个我没有问题

下面是UIApplication.h 的注释
[application registerForRemoteNotifications];

//调用该函数将导致两者中的任何一个应用范围:didRegisterForRemoteNotificationsWithDeviceToken:或application:didFailToRegisterForRemoteNotificationsWithError: to be在应用程序委托上调用。

注意:这些回调只会在应用程序有为用户通知成功注册registerUserNotificationSettings:,或者是否为后台启用应用程序刷新。

?这是否意味着如果你选择了"不允许"按钮,你永远无法获得设备令牌?

它不依赖于用户的操作来接收设备令牌

如果你在你的应用程序中包含:

 - (void)application:didRegisterForRemoteNotificationsWithDeviceToken

你仍然可以得到设备令牌,即使用户禁用它

这并不重要,你在推送通知的权限弹出窗口中选择什么动作,设备令牌无论如何都会每次获得,用户选择的唯一区别是,它在手机设置中启用/禁用通知。

这种行为是理想的。例如:-

当用户点击不允许,如果没有设备令牌提取,后来如果用户打开通知从手机设置,那么你将如何发送设备令牌到服务器?你将不得不再次注册远程通知,这是非常奇怪的。

最新更新