Room? Хотел спросить пару вещей
1) Как вы сделали запрос для обновление статуса на сервер? Если делать например callback в onBindViewHolder и от него отправлять запрос то при первом открытии может быть спам запросов
2) Как вы сделали обновление статуса в room? При UPDATE сработает sql trigger и данные будут заново собираться. diff util конечно поможет не делать заново onBind но с PagingLibrary даже так будет больно (из-за того что оно заново запрашивает страницу при изменении данных)
1) а у тебя есть эндпоинт для прочитывания сразу нескольких сообщений? 2) немного маркетинга: Lychee может после транзакции прислать готовый дифф, не извлекая весь датасет, но там SQL API будет в очередной раз перепиливаться
1) У меня есть возможность изменить несколько объектов за раз в запросе. Я скорее про то, как человек реализовал группировку обновления статуса для прочитанных сообщений, например при быстром скролле или том же первом открытии
Ну да. Я бы накладывал сообщения в ArrayList и делал removeCallbacks(sendUpdate); post(sendUpdate)
Хм, спасибо за идею
Пихнуть какую нибудь корутину с delay в onbind и в ней вызывать callback со списком из новых непрочитанных, который чистить после отправки
Обсуждают сегодня