Мы используем расширение службы уведомлений для отображения 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)")
}
Кто-нибудь знает, почему происходит такое поведение? Что будет альтернативой (ами)?