Данные локальных уведомлений - PullRequest
0 голосов
/ 29 апреля 2019

Привет всем Я застрял с одной проблемой в моем 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.

Мне нужно выяснить, когда сработало последнее (пятое) уведомление за этот день, чтобы я мог выполнить дополнительную работу.

1 Ответ

1 голос
/ 29 апреля 2019

Короче говоря, нет, получать уведомления невозможно независимо от состояния приложения.

Если приложение работает на переднем плане, вы можете сделать это, используя UNUserNotificationCenterDelegate методы, но если ваше приложениене на переднем плане, приложение будет знать об уведомлении, только если оно открыто из уведомления (смахивание или нажатие его).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...