Я пытаюсь создать приложение, которое будет отправлять локальные уведомления каждые n дней.
У меня есть DailyRepeat структура, которая содержит информацию уведомления:
struct DailyRepeat: BaseRepeat {
var title: String
var body: String
var date: Date
var day: Int
}
И метод, который запланировал уведомление:
func notifyDaily(at notification: DailyRepeat) {
let content = generateContent(title: notification.title, body: notification.body)
let dateComponents = DateComponents(day: notification.day, hour: notification.date.time.hours, minute: notification.date.time.minutes)
let trigger = UNCalendarNotificationTrigger(dateMatching: dateComponents, repeats: true)
let request = UNNotificationRequest(identifier: UUID().uuidString, content: content, trigger: trigger)
notificationCenter.add(request)
}
Моей первой мыслью было создать UNCalendarNotificationTrigger в первый день запуска, затем обработать уведомление и установить UNTimeIntervalNotificationTrigger, но, к сожалению, я не могу найти способ обработки уведомления без взаимодействия с пользователем.
Есть мысли, как это должно работать?