Надёжность уведомлений: что делать, если push не доходит
Вопрос
Пользователи жалуются, что не приходят уведомления о новых сообщениях. Как будете разбираться и что изменить в архитектуре?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Разделить этапы: сервер отправил, провайдер принял, устройство получило, показано
Проверить токены, окружение (sandbox/prod), разрешение и настройки категорий
Учесть энергосбережение и производителей Android, отсутствие GMS
Не строить логику на гарантии доставки: синхронизация при открытии
Резервные провайдеры и метрики по каждому этапу
Что могут спросить следом
- Как тестировать push на CI?
- Почему тихие push нельзя использовать как основной канал?
Разбор
Сначала разбиваю путь на этапы и меряю каждый: сервер отправил, APNs или FCM принял, устройство получило (событие из расширения или обработчика), уведомление показано и открыто. Это сразу показывает, где теряем. Типичные причины: устаревшие токены, сборка с sandbox-окружением на проде, пользователь отключил разрешение или категорию, на Android агрессивное энергосбережение у некоторых производителей или устройства без сервисов Google. Архитектурный вывод: push это сигнал, а не транспорт данных. Сообщения всё равно синхронизируются при открытии приложения и через постоянное соединение, пока оно активно. Для Android добавляю резервные провайдеры через абстракцию, а метрики доставки вывожу на дашборд по платформам и версиям.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Предыдущий вопрос
Тихие push-уведомления
Следующий вопрос
Система push-уведомлений в мобильном приложении
Ещё по теме «Push-уведомления»
- Разрешение на уведомления в Android 13
- Как измерить доставку push
- Notification и data сообщения FCM
- Авторизация в APNs: ключ или сертификат
- Открытие экрана по нажатию на push
- Rich-уведомления и действия
- Как push доходит до устройства
- Notification Service Extension