Size: a a a

Android arch. components

2019 November 26

VR

Volodymyr Riznyk in Android arch. components
Но в целом сама навигация не нраицца, если есть возможность не втягивать - не втягивать.
источник

AP

Anton Potekhin in Android arch. components
Сейчас возник интересный вопрос по поводу  paging library. Значит суть в том что теоретически мы не можем делать асинхронный запрос внутри datasource потому что если мы делаем асинхронный запрос тогда  не будет вызываться diff (он вызывается только если приходит pagedlist не пустой). Но тогда если я например хочу фильтровать список то я не могу оборвать старый запрос в datasource чтобы начать новый 😉
источник

MR

Max Rovkin in Android arch. components
А зачем обрывать?
источник

MR

Max Rovkin in Android arch. components
Можно просто делать задержку на инпут
источник

AP

Anton Potekhin in Android arch. components
Max Rovkin
Можно просто делать задержку на инпут
просто пример. Есть список который отображает результаты поиска на введенное ключевое слово из инета. При этом у нас инет медленный или сервер медленно отдает. И вот человек ввел например ключевое слово key1 и нажал поиск. Дата сурс запустил loading initial который у нас из-за тормозов сети или сервера будет нам отдаваться в течение 10 секунд. Человек не дождался конца и ввел key2 и нажал search. И нам получается нужно оборвать первый запрос и запустить новый.
источник

AP

Anton Potekhin in Android arch. components
если бы мы могли вернуть пустой pagedlist  и вызвать колбек когда будут получены данные то задача бы решалась. Но вот мы не можем так сделать иначе у нас не будет раотать дифф
источник

AP

Anton Potekhin in Android arch. components
или я что-то не понимаю ?
источник

MR

Max Rovkin in Android arch. components
Ну в таком варианте да, paging lib не очень гибкое решение
источник

AP

Anton Potekhin in Android arch. components
Max Rovkin
Ну в таком варианте да, paging lib не очень гибкое решение
дя уж 😉 у меня вот есть уже живой проект в котором уже есть pl 😉 и теперь нужно добавить подобный функционал и я в полном тупике как решить данную проблему
источник

V

Vladimir in Android arch. components
Anton Potekhin
дя уж 😉 у меня вот есть уже живой проект в котором уже есть pl 😉 и теперь нужно добавить подобный функционал и я в полном тупике как решить данную проблему
Выпилить и ждать следующую версию )
источник

AP

Anton Potekhin in Android arch. components
Vladimir
Выпилить и ждать следующую версию )
Без вариантов. Выпиливать уже поздно ;) что-нибудь накостылю
источник
2019 November 27

RK

Ruslan Krohalev in Android arch. components
Anton Potekhin
просто пример. Есть список который отображает результаты поиска на введенное ключевое слово из инета. При этом у нас инет медленный или сервер медленно отдает. И вот человек ввел например ключевое слово key1 и нажал поиск. Дата сурс запустил loading initial который у нас из-за тормозов сети или сервера будет нам отдаваться в течение 10 секунд. Человек не дождался конца и ввел key2 и нажал search. И нам получается нужно оборвать первый запрос и запустить новый.
источник

AP

Anton Potekhin in Android arch. components
собственно оно и и спользуется. Но чем это поможет ?
источник

AP

Anton Potekhin in Android arch. components
invalidate не оборвет старый запрос увы
источник

RK

Ruslan Krohalev in Android arch. components
будет создана новая связка - PagedList + DataSource для параметра key2. для отмены предыдущей загрузки нужно будет что-то придумывать в DataSource
источник

ST

Sasha Tainyuk in Android arch. components
Anton Potekhin
invalidate не оборвет старый запрос увы
источник

RK

Ruslan Krohalev in Android arch. components
и вообще зачем тебе старый запрос отменять? насколько это критично?
источник

ST

Sasha Tainyuk in Android arch. components
Потому что юзер перехотел искать что-то по первому запросу.) Он в поиске использует либу
источник

RK

Ruslan Krohalev in Android arch. components
Sasha Tainyuk
Потому что юзер перехотел искать что-то по первому запросу.) Он в поиске использует либу
у тебя есть LiveData с PagedList. Ты запустил запрос по key1 - создался PagedList для key1, потом изменился критерий на key2 - создался новый PagedList с новым datasource. отмена загрузки в предыдущем  Datasource опциональна, поскольку юзеру будет показан новый pagedlist
источник

ST

Sasha Tainyuk in Android arch. components
источник