Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
shulyakyarik
10 / 10 / 3
Регистрация: 28.03.2014
Сообщений: 156
#1

Добавление сообщений в чат - Программирование Android

15.01.2015, 13:19. Просмотров 637. Ответов 10
Метки нет (Все метки)

Есть чат. Новые соощения в него добавляются так: кто-то на сервере добавил сообщение, с помощью GCM на андроид приходит уведомление о новом сообщении, я беру id сообщения(его прислал GCM) ,загружаю его и добавляю в начало списка. Все вроде хорошо, но проблема возникает когда пользователь с android-а отправляет сообщение. Если у юзера медленное интернет соединение, то уведомление приходит слишком поздно, и в это время его сообщения в чате не отображается. Я так понимаю что нужно добавить это сообщение в чат и отметить что оно в обработке, а после получения уведомления убрать эту отметку. Но как это реализовать?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2015, 13:19     Добавление сообщений в чат
Посмотрите здесь:

Чат/игра с записью сообщений/данных в БД - Программирование Android
Приветствую. Подскажите пожалуйста по такому вопросу, как реализовать чат (или например игру), которые будут отправлять данные на...

Чат в приложении - Программирование Android
Здравствуйте! Работаю над идеей для нового приложения и возникло пару "концептуальных" вопросов. Возможно не по адресу, но буду рад...

Делаю чат - Программирование Android
Всем привет Делаю некое подобие чата. Окно чата состоит из ListView и находиться в отдельной Activity. Данные получаю (сразу скажу...

wifi чат - Программирование Android
Подскажите пожалуйста необходимо данные с ячейки передать на другой девайс через wifi изначально подключённые к одной сети. Заранее спасибо

Android ЧАТ! - Программирование Android
Помогите сделать чат для андроида ! что бы с одного устройства мог отправить , а на другом прочесть и ответить . может есть исходники ? или...

Простой чат - Программирование Android
Всем привет. Возникла надобность создать чат. На сколько я понял мне нужна будет серверная часть и сам клиент с набором API методов. Не...

Чат, что выбрать? - Программирование Android
Здравствуйте, у меня такой вопрос. хочу создать приложение месенджер (отправка текст,фото) вопрос как сделать сетевую часть? как ее...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Sony17
28 / 28 / 6
Регистрация: 24.05.2013
Сообщений: 157
16.01.2015, 16:53     Добавление сообщений в чат #2
Для чатов WebSocket'ы используются, а не PUSH-рассылки.
Gabberr
102 / 102 / 17
Регистрация: 13.10.2009
Сообщений: 402
16.01.2015, 17:31     Добавление сообщений в чат #3
В чатах используется websocket + push notification, если юзер онлайн передача сообщений происходит по сокету, иначе после включения инета придёт пуш.
Если у юзера медленное интернет соединение, то уведомление приходит слишком поздно, и в это время его сообщения в чате не отображается. Я так понимаю что нужно добавить это сообщение в чат и отметить что оно в обработке, а после получения уведомления убрать эту отметку. Но как это реализовать?
При отправке пользователем сообщения - в любом случае сперва следует его локально отобразить, с пометкой "отправка..", а после получения калбека от сервера, поменять отметку на "отправлено".
shulyakyarik
10 / 10 / 3
Регистрация: 28.03.2014
Сообщений: 156
16.01.2015, 17:48  [ТС]     Добавление сообщений в чат #4
Gabberr, чем плох мой способ?
Gabberr
102 / 102 / 17
Регистрация: 13.10.2009
Сообщений: 402
16.01.2015, 17:57     Добавление сообщений в чат #5
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от shulyakyarik Посмотреть сообщение
Я так понимаю что нужно добавить это сообщение в чат и отметить что оно в обработке, а после получения уведомления убрать эту отметку.
Так и нужно, верно.
Реализовать очень просто - при отправке сообщения сразу добавляйте его в адаптер, у объекта Message создайте поле isSended и в зависимости от его значения отображайте сообщение с нужной пометкой.
shulyakyarik
10 / 10 / 3
Регистрация: 28.03.2014
Сообщений: 156
17.01.2015, 22:28  [ТС]     Добавление сообщений в чат #6
Gabberr, всмысле создать поле isSend? Принимаю я объекты в формате JSON
Gabberr
102 / 102 / 17
Регистрация: 13.10.2009
Сообщений: 402
18.01.2015, 10:22     Добавление сообщений в чат #7
Должен быть класс-модель сообщения - Message, который будет строится из вашего json
shulyakyarik
10 / 10 / 3
Регистрация: 28.03.2014
Сообщений: 156
18.01.2015, 10:26  [ТС]     Добавление сообщений в чат #8
Gabberr, сделать объект в котором будет две переменные(isSended и JSON)? Можно ли парсить json в адаптере или правильнее будет туда уже готовые данные вставить?
Gabberr
102 / 102 / 17
Регистрация: 13.10.2009
Сообщений: 402
18.01.2015, 10:42     Добавление сообщений в чат #9
В объекте message будет много полей в зависимости от сообщения, например тип сообщения, идентификатор, текст, ссылка на картинку итд. json, который приходит с сервера нужно сразу парсить в объект Message и дальше оперировать уже этим объектом
shulyakyarik
10 / 10 / 3
Регистрация: 28.03.2014
Сообщений: 156
18.01.2015, 22:48  [ТС]     Добавление сообщений в чат #10
Gabberr, вы случайно не знаете как после обновления объекта Message обновить элемент listView?

Добавлено через 20 минут
Пока что вызываю adapter.notifyDataSetInvalidated();
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.01.2015, 22:56     Добавление сообщений в чат
Еще ссылки по теме:

Мини чат, тонкости разработки - Программирование Android
Например приложение Viber и его аналоги.. Как в них реализован чат? А именно "ListView" с сообщениями. Допустим БД SQLlite с...

Сложно ли будет добавить в данное приложение чат? - Программирование Android
http://www.androidhive.info/2012/01/android-login-and-registration-with-php-mysql-and-sqlite/ нашел один сайт, есть возможность регистрации...

Отправка и прием сообщений - Программирование Android
Здравствуйте! Мне нужно написать приложение, которое позволяло бы общаться его пользователям. При запуске должно проверяться установлено...

Стек сообщений GCM - Программирование Android
Есть новостное приложение, которое получает через GCM id новой новости. Если на долго выключить телефон или интернет, то в GCM...

Отправка сообщений в twitter - Программирование Android
Хотел узнать, кто-нибудь уже реализовывал такую возможность в своих проектах? Я тут пытался попробовать вот с этим:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Armagedo
208 / 208 / 60
Регистрация: 22.08.2014
Сообщений: 644
18.01.2015, 22:56     Добавление сообщений в чат #11
Цитата Сообщение от shulyakyarik Посмотреть сообщение
etInvalidated()
А почему не ...etChanged() ?
Yandex
Объявления
18.01.2015, 22:56     Добавление сообщений в чат
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru