IOS:当用户不允许远程通知时,为什么没有创建devicetoken
我创建了一个使用远程通知服务的应用程序, 并准备一个web服务来收集devicetoken和一些设备数据。 工作完美无瑕,没有问题 但是,我意识到一些奇怪的事情。(也许在考虑远程通知服务的工作原理时,它并不奇怪) 当用户第一次在设备上安装应用程序时, 在第一次运行期间,会出现一个警报对话框,要求用户接受远程通知 我认为,如果用户不允许远程通知,则不会创建devicetoken, 结果,IOS:当用户不允许远程通知时,为什么没有创建devicetoken,ios,apple-push-notifications,devicetoken,Ios,Apple Push Notifications,Devicetoken,我创建了一个使用远程通知服务的应用程序, 并准备一个web服务来收集devicetoken和一些设备数据。 工作完美无瑕,没有问题 但是,我意识到一些奇怪的事情。(也许在考虑远程通知服务的工作原理时,它并不奇怪) 当用户第一次在设备上安装应用程序时, 在第一次运行期间,会出现一个警报对话框,要求用户接受远程通知 我认为,如果用户不允许远程通知,则不会创建devicetoken, 结果,didRegisterforRemotionTificationwithDeviceToken方法从此不再调用
didRegisterforRemotionTificationwithDeviceToken
方法从此不再调用
但是,若用户在应用程序第一次运行时允许通知,则会创建devicetoken
。
当用户运行应用程序时,didregisterforremotenotificationwithdevicetoken
方法调用,
甚至用户也可以稍后在通知中心关闭所有远程通知
所以,在第一个场景中,
如果用户在开始时不允许远程通知,
如果没有devicetoken,我如何调用
didRegisterWithDeviceToken进行删除通知 如果用户不允许,您将永远无法获得设备令牌(这就是为什么首先询问用户)。您也不能发送通知。。
相反,您可以对以下错误作出反应:
application:DidFailToRegister for RemoteNotifications
还应注意,设备令牌可能会不时重新生成
您可以在上了解更多信息,但我认为,如果用户不允许远程通知,则“didFailToRegisterForRemoteNotificationsWithError”将不起作用。