Мне нужно повторить local notification
в определенное время и в определенные дни, например, 10:30 в воскресенье и пятницу или в определенные дни недели (понедельник и суббота).
switch repeatDays {
case .never:
dateComponents = Calendar.current.dateComponents([.hour, .minute], from: date)
flag = false
case .everyDay:
dateComponents = Calendar.current.dateComponents([.hour, .minute], from: date)
case .everyWeek:
dateComponents = Calendar.current.dateComponents([.weekday, .hour, .minute], from: date)
case .everyMonth:
dateComponents = Calendar.current.dateComponents([.day, .hour, .minute], from: date)
case .everyYear:
dateComponents = Calendar.current.dateComponents([.month, .day, .hour, .minute], from: date)
}
let notificationTrigger = UNCalendarNotificationTrigger(dateMatching: dateComponents, repeats: flag)
let request = UNNotificationRequest(identifier: uuid, content: content, trigger: notificationTrigger)
let notiCurrent = UNUserNotificationCenter.current()
notiCurrent.add(request) { (error) in
if let error1 = error {
print(error1.localizedDescription)
}
}
Но это повторное уведомление еженедельно не повторяется Sunday
и Wednesday
или в некоторые другие конкретные дни