ФорумСообществоФлейм → Построение диалога в программе используя данные с сервера (json)

Построение диалога в программе используя данные с сервера (json)

  • aba90

    Сообщения: 141 Репутация: N Группа: Кто попало

    Spritz 5 января 2013 г. 4:48

    Платформа андроид, но думаю это особо роли не играет.

    Суть вопроса: я пишу сетевой чат. Дошел до места где осуществляется диалог.
    Имеется сервер, допустим на нем 500 сообщений (формат данных json, с этим умею работать) . Пользователь установил приложение, и он получает к примеру 20 последних. Затем он пишет свое сообщение и его нужно отобразить. Как тут быть? Мне заново запросить последние 20 ? Я мог конечно запросить 1, но в диалог могут вмешаться и другие. То есть не известно сколько там новых сообщений. Как с таким лучше работать?

    Хотелось бы получить нечто такое http://www.whatsapp.com/
    Проблема в том что трафик на мобильном устройстве нужно беречь, мать его.
    Спустя 142 сек.
    вот думаю может тупо к в веб впихнуть постраничную)))
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 5 января 2013 г. 5:06, спустя 18 минут 45 секунд

    aba90, &since=$last_message_timestamp

    хуль как дети то
    Сапожник без сапог
  • kostyl

    Сообщения: 5203 Репутация: N Группа: Джедаи

    Spritz 5 января 2013 г. 6:48, спустя 1 час 41 минуту 26 секунд

    &after_id=$last_known_message_id
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 5 января 2013 г. 7:11, спустя 22 минуты 56 секунд

    у Костяна решение лучше
  • master

    Сообщения: 3236 Репутация: N Группа: Джедаи

    Spritz 5 января 2013 г. 7:49, спустя 37 минут 59 секунд

    Проблема в том что трафик на мобильном устройстве нужно беречь, мать его.

    тарификация бывает разная, иногда округляется до десятков или сотен килобайт, в результате много небольших запросов выжирают пакет
    не всё полезно, что в swap полезло
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 5 января 2013 г. 12:42, спустя 4 часа 53 минуты 27 секунд


    у Костяна решение лучше
    отсоси еще у него :D

    чем оно лучше то? объясни, не будь хохлом
    Спустя 10 сек.
    абсолютно идентичное решение.
    Сапожник без сапог
  • kostyl

    Сообщения: 5203 Репутация: N Группа: Джедаи

    Spritz 5 января 2013 г. 13:41, спустя 58 минут 47 секунд

    phpdude, смотря где и когда задается метка времени в твоем случае. after_id исключает всякую фигню с поясами и прочей "временной" фигней, ну всё зависит от конкретики…
  • AlexB

    Сообщения: 4290 Репутация: N Группа: в ухо

    Spritz 5 января 2013 г. 13:55, спустя 14 минут 14 секунд

    after_id - лоховство, работать надо с временными метками.
  • kostyl

    Сообщения: 5203 Репутация: N Группа: Джедаи

    Spritz 5 января 2013 г. 15:27, спустя 1 час 32 минуты 6 секунд

    AlexB, в чём лоховство то?
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 5 января 2013 г. 16:50, спустя 1 час 22 минуты 21 секунду


    AlexB, в чём лоховство то?
    в том что у тея может вообще не быть id например :D

    >> прочей "временной" фигней, ну всё зависит от конкретики…
    лошара, unixtime тоже это исклюает чуть более чем полностью, так что сало там ешьте и не вопейте :)
    Сапожник без сапог
  • kostyl

    Сообщения: 5203 Репутация: N Группа: Джедаи

    Spritz 6 января 2013 г. 2:34, спустя 9 часов 44 минуты 22 секунды

    phpdude, ахуеть, с таким же успехом можно сказать что и метки времени может не быть… или нет?
  • master

    Сообщения: 3236 Репутация: N Группа: Джедаи

    Spritz 6 января 2013 г. 2:48, спустя 14 минут 36 секунд


    phpdude, ахуеть, с таким же успехом можно сказать что и метки времени может не быть… или нет?

    может
    не всё полезно, что в swap полезло
  • aba90

    Сообщения: 141 Репутация: N Группа: Кто попало

    Spritz 6 января 2013 г. 6:04, спустя 3 часа 15 минут 17 секунд

    а если за 1 минуту будет 200 сообщений?
  • kostyl

    Сообщения: 5203 Репутация: N Группа: Джедаи

    Spritz 6 января 2013 г. 7:08, спустя 1 час 4 минуты 4 секунды

    aba90, да хоть за секунду 2000
  • aba90

    Сообщения: 141 Репутация: N Группа: Кто попало

    Spritz 6 января 2013 г. 7:19, спустя 11 минут 34 секунды

    ну вот загрузилось 20 при запуске программы. Затем нужно обновлять комнату чата и загружать новые. Мне что снова брать 20 ? А в друг за это время новых только 5?
    Спустя 172 сек.
    слишком много проблем, нужна как бы реализация или паттерн на эту задачу

Пожалуйста, авторизуйтесь, чтобы написать комментарий!