Возможные ошибки при интеграции пуш-библиотек
Частые проблемы при получении пуш-уведомлений
-
Проверьте соединение с интернетом и настройки файервола. Для получения пуша необходимо стабильное соединение с интернетом, без ограничений на доступ к серверам APNS, FCM и HMS
If your Apple devices aren't getting Apple push notifications - Apple Support
-
Убедитесь, что разрешили показ пуш-уведомлений на тестовом устройстве.
-
Проверьте настройки показа уведомлений для приложения – они должны допускать отображение всплывающих окон (баннеров)
Создание каналов уведомлений и управление ими | Views | Android Developers
-
Энергосберегающий режим на некоторых устройствах может повлиять на получение пуш-уведомлений. Отключите энергосбережение и повторите попытку получения пуша.
Чек-лист интеграции пуш-уведомлений
-
Проверьте получение пушей в разные состояния приложения. Если всё сделано правильно, во всех случаях вы должны видеть пуш, а в отчете по сообщениям пуш должен отображаться как доставленный.
- Открытое приложение
- Свёрнутое приложение
- Выгруженное из памяти
- Doze mode — только в Android
Optimize for Doze and App Standby | App quality | Android Developers
-
Убедитесь, что следуете рекомендациям по запросу пользовательского разрешения на показ пуш-уведомлений:
-
Рекомендации для Android
Notification runtime permission | Views | Android Developers
-
Рекомендации для iOS
Asking permission to use notifications | Apple Developer Documentation
-
-
Проверьте переход пользователя в приложение при нажатии на пуш. Если используете кнопки или ссылки, проверьте корректность маршрутизации пользователя на заданный ссылкой экран приложения.
-
Если ваше приложение должно уметь получать пуши от нескольких поставщиков уведомлений, убедитесь, что правильно настроили интеграцию.
Как посмотреть и скачать отчет по сообщениям
iOS
-
Убедитесь, что в файле Info.plist и параметре
edna_app_group
указано одно и то же имя AppGroup для расширений Notification Content Extension, Notification Service Extension и для приложения. -
Проверьте, что на вкладке Signing & Capabilities подключена одна и та же
AppGroup
для расширений Notification Content Extension, Notification Service Extension и для приложения. -
Проверьте, есть ли в коде приложения переопределение
UNUserNotificationCenter.current().delegate = self
и свой обработчик
userNotificationCenter(_:willPresent:withCompletionHandler:)
При их наличии отрисовка уведомления в развёрнутом приложении стандартными средствами библиотеки невозможна. Вы можете либо отказаться от переопределения и обработки, либо реализовать логику отрисовки уведомления в коде приложения.
Android
- Проверьте, что в build.gradle не прописаны зависимости hmscore и com.huawei.hms:push.
- Проверьте, что используете в проекте плагин Gradle не ниже версии 3.6.0.