首页 > 解决方案 > Android Paging Library DataSource 返回项目,但使用空 PagedList 调用 onChange

问题描述

我的 PagedList 和自定义 DataSource 存在问题,其中我的数据获取按预期返回,但我的 ViewModel Observer(在这种情况下为片段)在 onChanged 中获得了一个空的 PagedList。

我已经在这个问题上遇到了一些 StackOverflow 兔子洞,没有太多关于这个主题的内容,但我发现的一点表明它与并发性有关,并且必须同步完成获取。就我而言,我使用的是 Autobahn Socket 库,它有自己的读/写线程,但我确实确保调用和接收是在单线程执行器上完成的,我也尝试将其设置为 LivePagedListBuilder 的 fetchExecutor。

另一件有趣的事情是,当我将 loadInitial 中的网络提取换成本地数据库提取(不使用 Room)时,它工作正常,这表明我的 ViewModel/DataSource 接线没问题。在这种情况下,我还尝试将任务的每一步委托给许多不同的并发模式,并且每次都有效,这与许多 StackOverflow 答案所暗示的它必须是同步的背道而驰。

标签: androiddatasourcepagingandroid-architecture-componentspagedlist

解决方案


推荐阅读