本地通知:重复功能无法按预期工作

时间:2017-08-31 20:13:08

标签: ios swift uilocalnotification unusernotificationcenter

使用以下代码处理闹钟应用并尝试每周重复闹钟:

if repeatWeekly {
    let triggerWeekly = (Calendar.current as NSCalendar).components([.weekOfYear, .hour, .minute, .second], from: currentDateTime)
    trigger = UNCalendarNotificationTrigger(dateMatching: triggerWeekly, repeats: true)
} else {
    let triggerDaily = (Calendar.current as NSCalendar).components([.hour,.minute,.second,], from: currentDateTime)
    trigger = UNCalendarNotificationTrigger(dateMatching: triggerDaily, repeats: false)
}

在使用 UILocalNotification 的iOS9中,它可以正常使用以下代码:

let localNotification = UILocalNotification()
localNotification.repeatInterval = NSCalendar.Unit.weekOfYear

但是在使用 UNUserNotification 的iOS10中,重复本地通知无法正常工作,它只会重复1周,并且永远不会出现在下周。

例如,如果当前日期时间是" 2017年9月1日"然后通知将在2017年9月8日""但不要重复9月15日,9月22日左右。

由于

0 个答案:

没有答案