在我的设置标签栏中:
- 我有一个特定于功能的开关,可以根据 API 响应关闭或打开。
- 从网站只有管理员有权打开/关闭。
- 我可以每次在设置点击时调用 /user API 来检查用户的当前设置,但是有几个缺点,比如如果用户已经在设置中,那么它不会更新 UI 并且每次在设置点击时调用 api 不会听起来一个完美的解决方案。
我认为更好的解决方案是发送一个静默推送通知,我可以使用它来调用 API 以在需要时更新设置 UI。
但是如果用户禁用了推送通知,我还会收到静默推送吗?处理这种情况的推荐方法是什么?
在我的设置标签栏中:
我认为更好的解决方案是发送一个静默推送通知,我可以使用它来调用 API 以在需要时更新设置 UI。
但是如果用户禁用了推送通知,我还会收到静默推送吗?处理这种情况的推荐方法是什么?
简短的回答,是的
对于 iOS 8 中的应用程序开发人员来说,令人兴奋的新机会是,即使用户选择不接收通知,Apple 现在也将提供“静默”推送。此外,“静默推送”不再仅适用于报亭应用。每个应用程序都可以利用此功能在后台刷新内容,从而在用户打开应用程序的那一刻创建尽可能最新的响应式体验。
虽然...
用户仍然可以通过“后台应用刷新”控件关闭您的应用处理“静默推送”的能力。即使 Apple 推送通知服务 (APN) 会向您的手机发送标记为“内容可用”的推送,但操作系统不会唤醒您的应用程序来接收它,从而将其有效地丢弃在地板上。但是,选择退出“后台应用程序刷新”是一项鲜为人知的功能,与通知没有直接关联。您无法在“通知设置”中访问此首选项 - 它位于“常规”>“后台应用程序刷新”屏幕下。
在构建应用程序时请记住这一点。
资料来源: https ://www.urbanairship.com/blog/watch-list-ios-8-opt-in-changes
其他答案很好。但它们不是官方答案。
官方答案在What 's New in Notifications WWDC 2015视频中:
默认情况下启用静默通知。用户不需要批准您的 --不会授予您的应用使用它们的权限,您可以直接开始使用它们而无需征求用户的许可。但静默通知是后台应用 刷新背后的机制。在任何时候,您都知道用户可以进入设置并禁用它们。所以你不能依赖它们总是可用的。您不知道用户是否将其关闭,并且您不再收到通知。这也意味着会尽最大努力传递无声通知。这意味着当通知到达用户的设备时,系统将做出一些选择。