Обратите внимание, что в клиентском коде НЕТ основных проблем, таких как регистрация службы или проблема с выдачей токена.
Я использую API REST FCM для отправки сообщений с моего сервера приложений.Требуется показать диалоговое окно, когда приходят push-сообщения и приложение находится на переднем плане или если приложение находится в фоновом режиме, просто отображать уведомление.
Когда я использую простую полезную нагрузку уведомления, все работает нормально, как и ожидалось.Но как только мое сообщение содержит полезную нагрузку данных (в дополнение к полезной нагрузке уведомлений), ни один из обратных вызовов в моем приложении не вызывается независимо от того, находится приложение на переднем плане или в фоновом режиме.
Из документации онозвучит как сообщение с обоими типами полезных нагрузок, все еще должно работать - FireBase Android doc .
Подводя итог, это работает -
{
"to":"verylongtoken",
"token":"verylongtoken",
"notification":{
"title":"title",
"body":"body"
},
"priority":"high"
}
Но это не так -
{
"to":"verylongtoken",
"token":"verylongtoken",
"notification":{
"title":"title",
"body":"body"
},
"data":{
"message_type":"1"
},
"priority":"high"
}
Звучит действительно глупо, но чего мне не хватает?