Как автоматически удалять push-уведомления из центра уведомлений iOS в определенное время? - PullRequest
2 голосов
/ 12 апреля 2019

Я разрабатываю приложение для iOS с использованием Swift, которое имеет функцию push-уведомлений.Приложение отправляет уведомления с напоминаниями о днях рождения пользователям с помощью push-уведомлений (здесь используется APNS).

В настоящее время push-уведомления остаются в центре уведомлений устройства, пока пользователь не нажмет на это уведомление или не решит удалить его с устройства..

Теперь я ищу способ автоматического удаления этого push-уведомления в конце каждого дня, так как нет необходимости показывать на устройстве уведомления о днях рождения за прошедший день.

Может кто-нибудь предложитьмне решение, каким образом я могу это реализовать?Можно ли удалить уведомление из iOS без какого-либо взаимодействия с пользователем?

Заранее спасибо.

1 Ответ

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

@ dm_mobile Ваш вопрос на 100% действителен.


Чтобы автоматически удалить конкретное уведомление из Центра уведомлений, - вы не можете сделать это со стороны iOS, до тех пор, пока пользователь не будет взаимодействовать с этим уведомлением - Но вы можете сделать это со стороны сервера, позвольте мне рассказать вам, как


Как программно удалить уведомление из центра уведомлений? Когда сервер отправляет вам любое уведомление через сервер APNS с использованием конечной точки APNS, APNS вернет вам некоторые данные в качестве полезной нагрузки, вы получите идентификатор уведомления в виде ключа apns-id в заголовке ответа

Сохраните это значение apns-id в таблице базы данных на стороне сервера.

В конце дня или с определенными критериями условий вы можете удалить это уведомление из центра уведомлений устройства, отправив еще один запрос в APNS, передав значение apns-id в заголовок запроса.

Skype делает то же самое.

Прочитайте это для более подробной информации: https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/CommunicatingwithAPNs.html#//apple_ref/doc/uid/TP40008194-CH11-SW1

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