Отправлено уведомление fcm до создания темы или до подписки

Сценарий: отправить уведомление в тему «X» со сроком действия 4 недели.
Что происходит, когда:

  1. Тема не существует, на нее никто не подписывался. Затем через час кто-то подписывается на это. Получит ли это устройство это уведомление?
  2. Тема существует или существовала (был один подписчик, но он не был оплачен), теперь он снова подписывается через час после отправки. Получит ли он это?
  3. Одно или несколько устройств подписываются на тему X. Все они ее получили. Одно новое устройство теперь подписывается на него, как всегда, через час после отправки. Получит ли он это?

Что-то говорит мне «Нет» на все эти ответы, но я не могу найти этот ответ в документации fcm.

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

0
0
277
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Темы FCM создаются автоматически, когда вы отправляете ему сообщение или когда кто-то подписывается на них.

Устройство получает сообщения, отправленные в тему, только после того, как оно подпишется. Он не получает сообщения, которые были отправлены в тему, когда она не подписана.

Поскольку во всех трех вопросах сообщение отправляется в тему, когда устройство не подписано, оно не получит эти сообщения.

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

Да спасибо. Совершенно логично;) Но не был уверен. Спасибо за ответ!

Sarseth 12.04.2018 09:39

Другие вопросы по теме

Похожие вопросы

Вставить данные в базу данных реального времени не работает
Как создать сервис, работающий как fcm в android
Есть ли способ предотвратить загрузку дублированного изображения с телефона в приложение?
Как объединить два запроса в firestore и отсортировать их по времени
Эмулятор аутентификации firebase: невозможно создать пользователя в эмуляторе firebase с помощью внутреннего кода
Можно ли делать запрос с обратными вызовами в функции преобразователя redux?
Белый пустой экран, когда я пытаюсь использовать authprovider и useauth (react + firebase)
Невозможно прочитать файл лицензии license для спецификации firebase (7.9.0)
Есть ли способ, которым мы можем извлечь дату и время из объекта отметки времени из хранилища firebase в студии android
Каким будет решение, если мой ключ api действителен и подходит, но студия android все еще показывает ошибку, пожалуйста, передайте действительный ключ api во флаттере?