Похоже, ваш рефакторинг для AndroidX обновил вас до версии LiveData, которая требует наблюдения в главном потоке.Вы также увидите это, если обновитесь до последней версии LiveData до androidx, 1.1.1.
Наблюдение LiveData не может быть выполнено из потока пользовательского интерфейса, но в зависимости от того, что вы делаете,может быть в порядке.Если ваш DataSource фактически не выполняет никакой загрузки, вы можете указать библиотеке Paging использовать исполнителя, оборачивающего поток UI / Main:
static Executor MainExecutor = new Executor() {
Handler handler = new Handler(Looper.getMainLooper());
@Override
public void execute(Runnable runnable) {
handler.post(runnable);
}
};
и передать его в библиотеку Paging (при условии, что вы используетеLiveData<PagedList>
)
LivePagedListBuilder.create(myFactory, myConfig)
//...
.setFetchExecutor(MainExecutor)
.build();
(Если вы используете RxPagedListBuilder, есть аналогичный setFetchScheduler()
метод)