2016-10-27 2 views
0

Я использую FCM для уведомлений, когда приложение не используется (в активном состоянии), но что, если пользователь находится в разговоре «один на один» с каким-то одним или групповым чатом, продолжается?Как реализовать одно-одно соединение для обмена сообщениями

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

Или я должен реализовать что-нибудь еще для этого?

Я не узнал пару ссылок

Implementing one to one and group chat in android

Но опроса может быть огромным ресурсом интенсивной

Пожалуйста, предложите любую другую процедуру. Как Whatsapp или любой другой чат-мессенджер обрабатывает чаты One-One?

ответ

0

Для этого можно использовать Firebase Realtime Database.

Поддержание слушателя, открытого для базы данных в реальном времени, и обновление пользовательского интерфейса по мере необходимости, в то время как приложение находится на переднем плане. Если приложение находится в фоновом режиме, используйте FCM для отправки уведомления.

Наличие открытого слушателя также сохраняет сокет. Но по сравнению с опросом вы можете использовать FCM вместо того, чтобы приложение находилось в фоновом режиме.

Вы можете попробовать Firebase Friendly Chat CodeLab в качестве отправной точки.

+0

Пожарная база очень дорогая для базы данных на ежемесячной основе. Я опробовал восходящие сообщения, даже если я использую базу данных, я думаю. Любой другой способ или архитектура? – Ari

+0

@Ari Хм. Я думаю, что Firebase уже был хорошим звонком. Но возможно ли использовать [GCM CCS] (https://developers.google.com/cloud-messaging/ccs) именно тот, который вы ищете? –

Смежные вопросы