SnapShotListener против FCM - PullRequest
       4

SnapShotListener против FCM

0 голосов
/ 04 мая 2018

Мне было интересно узнать разницу между прослушивателями моментальных снимков и Firebase Cloud Messaging. Оба могут инициировать мой код для ответа на код на стороне сервера (например, облачные функции).

Если я правильно понимаю, списочные списки запускаются, когда я что-то записываю в базу данных, а служба FCM запускается, когда я отправляю сообщение из облачных функций. Что является более эффективным в следующем случае использования:

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

Добавить моментальный снимок, записать в этот документ функцию облака, ответить на триггер из прослушивателя и удалить документ потом

или

Добавить сервис FCM и как-то отправить на устройство сообщение из облачной функции

Я не знаю различий между уведомлением (FCM) и слушателем (snapshotlistener). Я не хочу никаких всплывающих окон, таких как уведомление Apple, но я просто хочу, чтобы мой код был уведомлен, чтобы я мог отвечать из вывода облачной функции.

1 Ответ

0 голосов
/ 05 мая 2018

Слушатели базы данных надежно активны, только если пользователь активно использует ваше приложение. Поэтому, если игрок отправляет ход, затем переключается на другое приложение и забывает об игре, он может никогда не увидеть обновление из Облачных функций.

С другой стороны, Firebase Cloud Messaging может доставляться независимо от того, активно приложение или нет. Так что это отличный способ вернуть игрока обратно в игру из облачных функций.

Какой из них лучше всего подходит для вашего варианта использования, вероятно, зависит от времени, которое требуется для обработки перемещения (или от того, что еще делает функция). Если это несколько секунд, вы можете использовать слушатель базы данных для передачи результатов. Если это дольше, FCM может быть лучше.

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