ответ

2

Теперь вы можете отправить notification message через консоль. Обратите внимание, что он отличается от сообщений ; уведомления только активируют обратный вызов onMessageReceived, когда приложение находится на переднем плане.

Есть в дополнительных опциях tab на Написать сообщение screen.

enter image description here

Просто разверните его и введите карту ключ/значение.

enter image description here

Они будут включены в поле данных уведомления.

+1

Это не работает должным образом. Если ваше приложение находится в фоновом режиме, вы не получите ответ на «onMessageReceived», даже если предполагается, что вы включаете «данные». –

+0

@WiseShepherd Я фактически заметил ту же самую проблему вчера, она может отправлять _notification message____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ сообщение_. Я обновил свой ответ. – oldergod

7

Консоль уведомлений Firebase может использоваться только для отправки уведомлений. Он не может использоваться для отправки сообщений данных.

Смотрите таблицу в message types in the Firebase documentation:

Уведомление сообщение

Использование сценария: FCM автоматически отображает сообщение для персональных устройств от имени приложения клиента. Сообщения уведомлений имеют предопределенный набор видимых пользователем клавиш.

Как отправить:

  1. Используйте сервер приложений и сервер API ТСМ: Установка ключа уведомления. Может иметь дополнительную полезную нагрузку данных. Всегда разборный.

  2. Используйте консоль уведомлений: введите текст сообщения, название и т. Д. И отправьте. Добавьте дополнительную полезную нагрузку данных, предоставив пользовательские данные в консоли уведомлений. Всегда разборный.

сообщение данных

Использование сценария: приложение Клиент отвечает за обработку сообщений данных. В сообщениях данных есть только настраиваемые пары ключ-значение.

Как отправить:

  • Используйте сервер приложений и сервер API ТСМ: Установка только ключ данных. Может быть разборным или нескладным.
+0

Неверный ответ .. Вы можете использовать его для обновления БД, если он будет использовать Messaging API («downstream msg»). – Nirel

+5

Вы можете отправлять сообщения с нисходящими данными с помощью Firebase Cloud Messaging, отправив запрос POST в конечную точку HTTP. Но вы не можете отправлять сообщения данных из консоли Firebase Notifications Console (https://console.firebase.google.com/project/_/notification), о чем и идет речь. –

6

Пожалуйста, смотрите здесь: Firebase push notifications update DB, мой пост с июня.

В заключение, вам необходимо отправить запрос HTTP POST для https://fcm.googleapis.com/fcm/send

https://fcm.googleapis.com/fcm/send 
Content-Type:application/json 
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA 

{ "data": { 
"score": "5x1", 
"time": "15:10" 
}, 
    "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..." 
} 
+1

Этот ответ не подходит в контексте этого вопроса. Пожалуйста, проверьте вопрос, заданный - * он специально спрашивает об отправке сообщений с помощью консоли, что невозможно *. –

+1

, если вы хотите отправить сообщение данных в определенную тему, значение свойства «to» должно быть в форме «/ themes/TOPIC_ID», в противном случае вы получите сообщение об ошибке – Apperside

1

Вы можете проверить и уведомляющее сообщение и сообщение данных с использованием Почтальон (клиент остальное для запроса тестирования HTTP) .Увидь снимки экрана:

enter image description here

В заголовочном проходе:

key:Content-Type, value:application/json 
key:Authorization:key=<Server key> 
Смежные вопросы