Вопрос касается iOS (11 или более поздней версии), особенно фреймворка UserNotifications.Я делаю приложение, похожее на календарь, которое отправляет несколько локальных уведомлений о событии.Он напоминает пользователю за 30 минут до, за 10 минут до и во время события.
Как только первое уведомление было доставлено, я хотел бы удалить его во время доставки второго уведомления.Точно так же я хотел бы, чтобы оба предыдущих уведомления были удалены во время доставки третьего уведомления.Я понимаю, что я могу установить expiryDate в информационном словаре
Я знаю, что метод removeDeliveredNotifications (withIdentifiers:) UNUserNotificationCenter является решением.Однако я не могу понять, как выполнить его в заранее установленное время , когда мое приложение больше не находится на переднем плане .
Я изучил фоновые режимы, которые позволяют
- воспроизведение / запись звука (NA)
- Приложения на основе местоположения (NA)
- длительное выполнение (к сожалению, ограничено всего 180 секундами)
- внешние аксессуары Bluetooth (нет данных)
- загрузка новостных сообщений (нет данных)
- VOIP (нет данных)
- фоновая выборка (моя потребность чисто локальная)
- пультуведомления (мне нужно только локально)
NA = Не применимо
Так как я могу удалить доставленные локальные уведомления, когда мое приложение находится в фоновом режиме?