Блокирует ли система Android уведомление FCM - PullRequest
0 голосов
/ 05 июля 2019

Я отправляю уведомление устройства каждые 2 минуты для сбора данных (GPS, Мощность сигнала ...).

Служба запуска FCM, которая отправляет собранные данные в API

Однако устройство перестает получать уведомления FCM для запуска этого приложения в некоторых случаях или даже до его перезапуска.

Есть ли для этого какая-то причина и как я могу это передать?

Примечание: у меня есть Добавить сервер в белый список в консоли Firebase

1 Ответ

0 голосов
/ 05 июля 2019

Обычно существует два типа сообщений FCM , которые мы можем отправлять зарегистрированным устройствам. Первый - data message, а второй - messages message. Приоритет сообщения данных по умолчанию: NORMAL , где в качестве уведомительных сообщений приоритет имеет HIGH . Сообщения с высоким приоритетом считаются доставленными первыми (это означает, что в некоторых случаях существует вероятность не получать сообщения данных). Но можно изменить приоритет сообщения данных на ВЫСОКИЙ при отправке их с сервера. https://firebase.google.com/docs/cloud-messaging/concept-options#setting-the-priority-of-a-message

Но в моем случае у меня были ситуации, когда я не мог получать сообщения FCM даже после установки приоритета на ВЫСОКИЙ. Поэтому я решил использовать службы-оболочки FCM, такие как Onesignal , для отправки push-уведомлений. Это лучше в случае доставки сообщений. Внутри это FCM, но они справились с проблемой доставки сообщений до определенной степени. Взгляни на https://onesignal.com/

...