Ios 11-每x分钟重复一次的用户本地通知

时间:2017-09-07 11:02:43

标签: ios swift ios11

在iOS 11中,如何实现每x分钟重复一次的本地通知? 将从用户中选择重复间隔。例如,假设用户选择设置明天上午9:00触发的通知,并从那里开始每2天(或两周或6个月或10分钟)触发

var repeatInterval = Bool()

trigger = UNCalendarNotificationTrigger(dateMatching: triggerDate, repeats: repeatInterval)

//Schedule the Notification
let identifier = titleNospace
let request = UNNotificationRequest(identifier: identifier!, content: content, trigger: trigger)
self.center.add(request, withCompletionHandler: { (error) in
    if let error = error {
        print(error.localizedDescription)
    }
})
UNUserNotificationCenter.current().add(notificationRequest, withCompletionHandler: nil)

使用此代码,我可以在设定日期安排通知。我被告知,如果我想安排重复通知,我应该在发送通知时使用triggerInterval。 但是我怎么能这样做呢?如何在传递通知时获取重复时间(由用户定义)的值? 我要用这个吗?:

func didReceive(_ notification: UNNotification)

我已经尝试了但似乎它从未被调用过。

我是swift的新手,我已经尝试过但似乎找不到解决方案。 我已经能够管理每小时,每月,每日和每年的重复。 如果我想添加自定义重复,但我真的不知道该怎么做。

非常感谢任何帮助!

谢谢

1 个答案:

答案 0 :(得分:0)

根据您的信息,您无法自定义重复时间间隔,例如每2分钟,10分钟或等等。您必须使用NSCalendarUnit的值

How to set repeat frequency in User Notification