Сообщение данных FCM не отправляет последние данные - PullRequest
0 голосов
/ 24 апреля 2018

Я отправляю data-сообщение в мое приложение для Android через FCM. Но когда я меняю структуру данных, это, похоже, не влияет. Полезная нагрузка FCM составляет

{
"to" : "eF3lccIdYs4:APA91bHpC1xWNl4MZXXXX",
"data" : {
 "caller_name" : "Sobin Thomas",
  "room"    : "2000",
  "call_type" : "audio"

  }, 
"time_to_live" : 0
}

Если я поменяю его на

{
"to" : "eF3lccIdYs4:APA91bHpC1xWNl4MZXXXX",
"data" : {
 "**caller**" : "Sobin Thomas",
  "**room_number**" : "2000",
  "call_type" : "audio",
 **"call_time" : "2018-04-24 12:12:12",**

  }, 
"time_to_live" : 0
}

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

1 Ответ

0 голосов
/ 24 апреля 2018

Firebase Cloud Messaging будет пытаться доставить каждое сообщение, а не только последнее. Вероятно, случится так, что ваше устройство получает несколько сообщений подряд и отображает только одно.

Если вы хотите, чтобы новые сообщения заменяли старые сообщения, вам нужно указать так называемый collapse_key. Из документации :

Этот параметр идентифицирует группу сообщений (например, с collapse_key: "Updates Available"), которые можно свернуть, чтобы при возобновлении доставки отправлялось только последнее сообщение. Это сделано для того, чтобы не отправлять слишком много одних и тех же сообщений, когда устройство снова подключается к сети или становится активным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...