Почему событие onMessageReceived не вызывается, когда приложение не запущено - PullRequest
0 голосов
/ 12 января 2019

Это серьезная проблема, не имеющая решения на данный момент. Я отправил это в службу поддержки Firebase. Это вызвано (по крайней мере) Samsung, который для экономии заряда батареи произвольно отключает службы. Одним из них является служба сообщений Firebase. Команда Firebase отправила запрос в Samsung, чтобы решить эту проблему, но она не устранена.

Если вы поэкспериментируете с настройками батареи Samsung, вы обнаружите, что можете перечислить приложение как «неконтролируемое приложение», где указано, что перечисленные здесь приложения не будут остановлены. Но это не работает.

Возможно, если бы вы были кем-то важным, вы могли бы убедить Samsung "занести в белый список" ваше приложение.

Хуже всего то, что когда наблюдатели этого форума видят обсуждаемую тему, они обычно либо закрывают сообщение, либо удаляют сообщение. Как будто они пытаются держать вопрос в тайне. Это действительно делает FCM практически бесполезным.

Я пытаюсь рассказать правду здесь. надеюсь, кто-то прочитает это, прежде чем Mordac удалит это сообщение.

РЕДАКТИРОВАТЬ 04/02/2019 Служба поддержки Firebase сообщила мне, что Samsung исправила проблему с отключением приоритетных сервисов. Это исправление будет применяться только к Android Pie, но никогда не будет ретро исправлено для Android Oreo. Службы Foreground никогда не будут надежными на устройствах Samsung под управлением Oreo. Разработчики могут обойти эту проблему, работая непосредственно с устройством, используя Samsung SEAP API LEVEL MDM_3.0.

...