Подтвердить что ты не робот

Мгновенный обмен сообщениями на Android с облачными сообщениями Google

Я просто смотрел новые облачные сообщения Google (GCM), и мне было интересно, можно ли использовать GCM для мгновенных сообщений в вашем приложении Android?

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

Tnx!

4b9b3361

Ответ 1

Официальные документы в Google Cloud Messaging для Android упоминают, что GCM можно использовать для разработки приложения для обмена мгновенными сообщениями.

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

Итак, мы пошли вперед и создали приложение для обмена мгновенными сообщениями, используя GCM. На стороне сервера работает Google App Engine. Здесь вы можете прочитать полный учебник. Создайте приложение мгновенных сообщений с помощью Google Cloud Messaging (GCM)

Таким образом, для ответа на ваш вопрос можно использовать GCM для обмена мгновенными сообщениями на Android. Однако надежность GCM по сравнению с XMPP для IM - это еще одна тема.

Ответ 2

Только мои два цента:

Я думаю, вы не должны использовать GCM для доставки IM. У вас должен быть выделенный сервер, к которому будут подключаться приложения Android IM, используя постоянное соединение сокета. Ваш сервер будет знать, кто в сети или нет, и поэтому может предоставить "онлайн-список" всем приложениям.

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

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

Ответ 3

Попробуйте pub nub - его довольно легко реализовать - отправьте Im с одного мобильного на другой - просто запустите веб-страницу (см. ссылку) в браузере и пообщайтесь между ПК, мобильным телефоном и работайте - с сервером no server ". Код для javascript, но у них также есть java. Приложение чата с использованием инфраструктуры веб-приложений jquerymobile

Ответ 4

Вы можете проверить, как сервер отправляет сообщение в службу GCM. Можно использовать php на стороне сервера, поэтому его можно будет адаптировать к запросу POST непосредственно из вашего приложения. Однако для связи вам нужны зарегистрированные идентификаторы устройств, к которым вы хотите отправить данные. Значит, вам нужно что-то хранить и получить. Лучшим решением будет ваш собственный (веб-сервер), который хранит все идентификаторы и обрабатывает отправку сообщений.