Можно ли реализовать пейджинг в реальном времени (библиотека aac) с комнатой?

В настоящее время я работаю над мессенджером p2p. Наши сообщения хранятся в базе данных комнаты. Когда мы отправляем или получаем новое сообщение, мы вставляем его в комнату db. И это работает, срабатывает метод onItemRangeInserted из RecyclerView.AdapterDataObserver.

Но когда источник данных дополняет последнюю страницу (извлекает последние данные из БД), метод onItemRangeInserted не вызывается. Только после второй вставки в БД этот метод срабатывает.

Мы используем PositionalDataSource по умолчанию, реализованный room и LivePagedListBuilder.

Итак, реально ли использовать его для пейджинга в реальном времени с комнатой? Если да, то в чем может быть проблема?

Если нужен код, пожалуйста, дайте мне знать. Потому что там много кода, и я не уверен, какую часть прикрепить.


person Ігор Онек    schedule 22.01.2019    source источник


Ответы (2)


Хотя я не работаю над приложением для чата в реальном времени, я думаю, что этот репозиторий будет помочь вам и решить вашу проблему.

person Anjan Debnath    schedule 05.02.2019

Установите для setEnablePlaceholders значение true в PagedList.Config.

person Ігор Онек    schedule 23.01.2019