我正在开发一款Apple Push Notification
集成的iPhone应用。我对此有些怀疑。
如果用户点击APNS注册提醒中的“不允许”按钮,我们的代码是否仍然会收到来自APNS的设备令牌?
我测试过,当用户在iPhone通知中关闭通知时,应用程序仍会从APNS收到设备令牌吗?这是对的吗?
有人可以澄清这些疑惑吗?
答案 0 :(得分:8)
根据我对APNS的理解,它不依赖于用户的操作(正如您提到的那样,如果用户点击“不允许”按钮),您的iOS就会收到设备令牌。
如果您的应用已包含在内:
- (void)application:didRegisterForRemoteNotificationsWithDeviceToken
这意味着您的基于iOS的应用程序正在发送推送通知注册请求。作为回报,Apple将设备令牌发送到iOS;然后iOS将令牌发送到应用程序,然后应用程序将其发送给他们的服务提供商。
请注意,当系统询问用户“不允许”并不意味着您不会收到设备令牌。 “不允许”是指针对用户收到的应用程序收到的任何通知所采取的操作。说,位置。这是完全不同的事情。这意味着用户不允许该应用使用他/她的位置。
是。它仍然收到设备令牌,正如我在#1中对你的问题的回答中所讨论的那样。 这只是您的应用的设置,这意味着只要有与您的应用相关的任何信息的更新,您就不会收到任何可见的通知(徽章,消息或声音)。这就像将您的Facebook帐户设置为仅在您的朋友向您发送私人消息时接收通知。除此之外,您将不会得到任何通知。
启用APNS的过程是:
要了解有关APNS的更多信息,请检查this。
答案 1 :(得分:5)
我已经使用Xcode 6.1,ios8.1.2进行了测试。目前,设备令牌仅在两种情况下生成
在苹果同意的情况下第一次拒绝,不会生成设备令牌,直到手动更改设置页面中的值。