切换为启用/禁用本地通知(Swift 4)

时间:2018-11-05 12:13:27

标签: ios swift unusernotificationcenter

我正在制作一个Todo应用程序,应该在应用程序设置的内部设置一个切换按钮,以启用/禁用所有本地通知。

我尝试了removeAllPendingNotificationRequests()方法,但是它完全删除了所有通知,我想让它们保持计划状态,但是什么也不做。甚至有可能吗?

非常感谢

2 个答案:

答案 0 :(得分:0)

您无法从应用程序更改通知设置,但可以将用户导航到应用程序的设置,以便他们可以更改通知设置

if let aString = URL(string: UIApplicationOpenSettingsURLString) {
            UIApplication.shared.open(aString, options: [:], completionHandler: { success in
                SlideNavigationController.sharedInstance().closeMenu {

                }
            })
        }

答案 1 :(得分:0)

据我了解,您需要禁用通知请求,但是请保存它们,以防用户重新启用该开关。是吗?

在这种情况下,您可以将所有待处理的通知另存为数据库(或文件等)中的一些自定义数据实体,然后通过调用removeAllPendingNotificationRequests()来删除它们。

如果用户重新启用该开关,则需要从本地保存的数据实体重新创建通知请求。