通知后端推送通知已被禁用的最佳方式是啥?
Posted
技术标签:
【中文标题】通知后端推送通知已被禁用的最佳方式是啥?【英文标题】:What is the best way to notify backend that push notifications have been disabled?通知后端推送通知已被禁用的最佳方式是什么? 【发布时间】:2017-11-22 21:08:06 【问题描述】:通知后端用户禁用推送通知的最佳方式是什么?
我一直在玩一些选项,但我不确定哪个是最好的选择:
选项 1:
检查用户是否在 applicationDidFinishLaunching
方法中禁用了推送通知,如下所示:
UNUserNotificationCenter.current().getNotificationSettings ...
唯一的缺陷是假设用户禁用推送通知,然后再不重新打开应用程序。 applicationDidFinishLaunching
方法永远不会被调用,因此我的应用程序永远不会意识到通知已被禁用并且不会正常运行。
选项 2:后端有没有办法检查通知是否已被禁用?
【问题讨论】:
如果用户“从不重新打开应用程序” ...您的应用程序如何适当或不适当地运行?根本不是在演戏。 @DonMag 这就是我的意思。它根本无法采取行动,因此我永远无法通知后端用户已禁用通知。 APNS 反馈服务?见:developer.apple.com/library/content/documentation/… 不,我想我已经弄清楚了。如果用户禁用了推送通知,Apple 会发送 410 状态码 【参考方案1】:好的,所以在查看了docs 之后,我可能已经想通了。
如果设备令牌不再处于活动状态,Apple 应发送 410 状态代码,这意味着用户必须停止推送通知或删除应用程序。
【讨论】:
以上是关于通知后端推送通知已被禁用的最佳方式是啥?的主要内容,如果未能解决你的问题,请参考以下文章