Как удалить доставленные уведомления из расширения службы уведомлений - PullRequest
0 голосов
/ 28 октября 2019

Мы используем расширение службы уведомлений для отображения 2 типов уведомлений: вызов и отмена. Первый отображает сообщение «Вам звонят». Второй будет отображать «Вам звонили».

Когда дело доходит до последнего уведомления, мы хотим удалить все ранее созданные уведомления о вызовах, все еще активные в центре уведомлений. Это должно работать, когда приложение находится в фоновом режиме и также завершено.

Для этого мы могли бы использовать UNUserNotificationCenter.current().removeDeliveredNotifications.

Однако в расширении службы уведомлений и getDeliveredNotifications, и getPendingNotificationRequests returnпустой список, даже если приложение создало уведомления, которые все еще отображаются в центре уведомлений.

UNUserNotificationCenter.current().getPendingNotificationRequests { notifications in
    print("[NotificationService] Current pending notifications requests count: \(notifications.count)")
}

UNUserNotificationCenter.current().getDeliveredNotifications { notifications in
    print("[NotificationService] Current notifications count: \(notifications.count)")
}

Кто-нибудь знает, почему происходит такое поведение? Что будет альтернативой (ами)?

...