из бд(livedata). Сообщения имеют 3 состояния(успешно отправлено, в процессе отправки, ошибка отправки), и при каждом изменении состояния я обновляю БД и при каждом изменении ко мне приходит ВСЯ бд и всё что мне остаётся это удалять из адаптера все старые сообщения и устанавливать новые. Если отказаться от livedata, придётся постоянно руками дёргать кучу методов обновления и запроса обновлённых данных, что тоже не круто. Как это всё дело можно оптимизировать?
Может быть здесь что-то найдешь? https://core.telegram.org/techfaq
Можно попробовать представить диалог в виде очереди с счетчиком сообщений и номером последнего прочитанного сообщения (на клиенте) При обновлении счетчика подтягивать сообщения из очереди
Обсуждают сегодня