Привет всем Я застрял с одной проблемой в моем iOS
приложении.Я искал по интернету и не нашел решения.Большинство решений используют устаревшие
func application(_ application: UIApplication, didReceive notification: UILocalNotification)
Таким образом, сценарий выглядит следующим образом:
Приложение планирует на каждый день 5 локальных уведомлений, и это нормально, и это работает:
var dateComponents = DateComponents()
dateComponents.weekday = Date().dayNumberOfWeek()
dateComponents.hour = hour
dateComponents.minute = minute
dateComponents.second = 5
let notificationTrigger = UNCalendarNotificationTrigger(dateMatching: dateComponents, repeats: false)
let request = UNNotificationRequest(identifier: "identifier", content: notifcation, trigger: notificationTrigger)
UNUserNotificationCenter.current().add(request, withCompletionHandler: nil)
Но у меня такой вопрос: можно ли узнать, когда сработало уведомление, независимо от состояния приложения, и получить данные из этого уведомления?
Потому что время для каждогоизвлечение уведомлений из API Я не знаю, когда (час и минута) будут запланированы уведомления.
Например, в Android я планирую уведомления с использованием AlarmManager
API, а затем легко, расширив BroadcastReciver
Я могу получитькаждое отправленное уведомление и получение данных, отправленных через Intent
.
Мне нужно выяснить, когда сработало последнее (пятое) уведомление за этот день, чтобы я мог выполнить дополнительную работу.