ios,推送通知授权回调有变化吗

标签 ios authorization push

在 ios 中,如果我在提示时授权或拒绝位置服务,则会立即调用一个委托(delegate)方法:

- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status;

我想知道是否存在类似的方法来接受或拒绝推送通知。我知道如何提示以及如何测试状态,但不知道如何在用户接受或拒绝通知后立即执行某些操作。

我想提示用户推送通知,并根据他们的响应执行某些操作,例如以一种或另一种方式重定向 ViewController。

最佳答案

我对此进行了大量研究,不幸的是,该接受/拒绝选项的状态似乎完全不透明。

您可以确定用户没有启用推送通知(使用 UIApplication 的 isRegisteredForRemoteNotifications ),但不能确定它未启用的原因(即确定它是“从不提示”还是“提示然后拒绝或稍后禁用”状态)。

我强烈怀疑这是 Apple 有意识的设计决定,目的是让开发人员更难追捕选择退出的用户。不过,拥有这些信息是有正当理由的,所以我希望他们将来重新考虑。

我希望这有帮助。

关于ios,推送通知授权回调有变化吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28177812/

相关文章:

iPhone 应用程序进行语音通话

android - 使用 Facebook Graph API 邀请好友加入应用

ios - iOS 中的嵌套 JSON 解析

Android 或 iOS Captive Portal 登录窗口成功时自动关闭

java - 我如何从 HttpClient 获取 Bearer Token?

heroku - git push heroku master 导致真实性问题和主机 key 失败

ios - 如何在uiview动画中使用数组

Asp.Net 授权规则优先级

authentication - IIS 中使用匿名身份验证的 FTP 网站需要用户名和密码

navigation - 后退按钮在 Sencha 触摸上不起作用