iOS 10 (Swift) 拒绝通知权限

iOS 10 (Swift) Reject Notification Permissions

我想在我的应用程序中有一个 UISwitch,按下时将请求通知授权,或者如果已经授权则拒绝它。

有没有办法执行拒绝? 我知道如果调用 requestAuthorization 并且用户已经授权了该应用程序,那么什么都不会发生。所以我很好奇应用程序中是否有一种方法可以删除通知权限,而无需强制用户转到他们设备上的设置应用程序并从那里进行操作。

一旦用户通过响应原始权限请求对话框授予(或拒绝)位置权限,更改权限的唯一方法是用户自己使用设备设置应用程序。

您的应用无法使用它拥有的权限。例如,如果用户关闭您应用中的 'notifications' 开关,则取消安排任何已安排的本地通知并且不再安排。

虽然您不能像 Paulw11 所说的那样从您的应用程序更改它,但您可以打开设置页面并要求用户更改它。

UIApplication.shared.openURL(URL(string:"prefs:root=NOTIFICATIONS_ID")!)