Я хочу очистить удаленные уведомления, чтобы они не накапливались в Центре уведомлений (например, когда вы получаете видеозвонок в WhatsApp или Messenger, отображается только последнее уведомление).
Я пытался позвонить (в didReceiveRemoteNotification
):
let center = UNUserNotificationCenter.current()
center.removeDeliveredNotifications(withIdentifiers: ["notification_identifier"])
Но он вызывается только в том случае, если приложение активно. Как я могу это сделать, если приложение находится в другом состоянии?
Спасибо за вашу помощь.
didReceiveRemoteNotificaton
будет вызываться для тихих push-уведомлений во всех состояниях, кроме состояния пользователя. Чтобы быть вызванным в состоянии завершения пользователя, вам нужно будет использовать PushKit (что означает, что ваше приложение должно быть приложением VoIP). - person Paulw11   schedule 15.10.2018