Подтвердить что ты не робот

Является ли служба push push уведомлений надежной?

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

Итак, мой вопрос: APNs почти на 100% надежны или мне просто нужно пропустить некоторые уведомления здесь и там из-за прерывистого соединения 3G/wifi?

Я бы подумал, что APN работает как система очередей и повторяет попытку, если он не был успешным в первые несколько раз.

4b9b3361

Ответ 1

Служба APN будет отправлять сообщения в очередь, но Apple не гарантирует доставку всех сообщений. Только последнее сообщение от приложения будет храниться в очереди, когда пользователь отключен. Кроме того, старые сообщения могут быть удалены.

Руководство по программированию локальных и Push Notification

Служба уведомлений Apple Push включает качество обслуживания по умолчанию (QoS), который выполняет функция store-and-forward. Если APN попытки доставить уведомление, но устройство находится в автономном режиме, магазины QoS уведомление. Он сохраняет только один уведомление за приложение на устройство: последнее полученное уведомление от поставщика для этого приложения. Когда автономное устройство позже повторно подключается, QoS перенаправляет сохраненное уведомление на устройство. QoS сохраняет уведомление для ограниченный период до его удаления.

Ответ 2

У меня есть лазурный веб-сайт (и мобильный сервис, служебная шина, db, активный каталог и т.д.), который отправляет push-уведомления в приложение xamarin на телефоне Windows и iphone. Первое уведомление получено обоими. Второе уведомление получено только на телефоне Windows, оно не попадает на iphone. Если я отправлю другое уведомление, оно будет получено обоими. Таким образом, я исследовал поведение в бит больше и обнаружил, что если я пулемет ряд уведомлений (рука набрала один раз в 2 секунды), то телефон Windows получил их всех, но iphone только получил первый. Но если я подожду и отправлю уведомление, оно будет получено обоими устройствами. Следующим тестом является проверка того, всегда ли уведомления поступают с интервалом в 5 минут. Отправленные два сообщения с промежутком в пять минут между ними, оба окна телефона и iphone получили оба уведомления.