我正在尝试使用新的 Android 架构组件设置我的所有列表:Room Persistance Library和Paging Library。但我面临以下问题。想象一个应用程序有很多相同型号的不同列表。每个列表都有自己的对服务器的 url 请求。有些元素可以在不同的反应中重复。所以我认为我必须将每个响应的所有元素插入并更新到该模型的表中。此外,每个请求都有页面。例如,elements/famous/0
,elements/famous/1
。因此,当收到第 1 页响应时,包含列表 0 元素的列表必须添加第 1 页返回的元素。
返回 LivePagedListProvided 的 Room 请求如下所示:
@Query("SELECT * FROM elements")
fun getElements(): LivePagedListProvider<Int, Model>
当查询的某些元素发生更改,或者添加到数据库中的元素影响了查询时,LivePagedListProvider
可观察对象提供了更改,因此 UI 会自动更改。
问题是:根据使用分页库的不同请求,我应该如何保存和检索可以包含在不同列表中的元素?