Уведомление приложения Foreground практически пусто, фоновое приложение получает уведомление, но без пользовательских данных - PullRequest
0 голосов
/ 12 февраля 2019

Я работаю над приложением Android в Kotlin и хочу отправить уведомление, чтобы щелкнуть по нему и открыть пользовательский вид.

Я реализовал уведомление благодаря Firebase .Я могу отправлять уведомления в Firebase, но они хорошо отображаются (с правым символом (= треугольник), правильным заголовком и нужным сообщением), только если приложение находится в background , но с пользовательскими данными(ключ => val), предоставленные в базе данных, не обнаружены.

Для приложения foreground , если я отправляю уведомление из Firebase, я могу отображать пользовательские данные (key => val), но у уведомления нет заголовка, сообщения или пользовательскогоicone (имеет квадратное / округленное icone)

Вместо того, чтобы показывать весь мой код, я предпочитаю дать вам ссылку, по которой я следовал.

https://www.android4dev.com/firebase-pushnotification-android/

Я хочу получить одинаковый результат с обеих сторон, чтобы получить пользовательские данные.

См. Результат:

enter image description here

1 Ответ

0 голосов
/ 13 февраля 2019

Существует два типа сообщений FCM и изменения поведения на его основе.

  • Notification messages (они обрабатываются SDK автоматически)
  • Data messages(обрабатывается приложением)

Используйте уведомления, когда вы хотите, чтобы FCM обрабатывал отображение уведомления от имени вашего клиентского приложения.Используйте сообщения данных, когда вы хотите обработать сообщения в вашем клиентском приложении.https://firebase.google.com/docs/cloud-messaging/concept-options#notifications_and_data_messages

Я думаю, что вы должны использовать data messages вместо notification messages для согласованного поведения.

...