如何在 Paging 3 中使用网络绑定资源?
How to use Network Bound Resource with Paging 3?
我想使用网络绑定资源,这意味着带有分页 3 的房间缓存。如果有人做过,请post你的回答谢谢。
来自 architecture-components-samples 的 NetworkBoundResource
只是一个帮助程序 class 包装对网络 + 数据库缓存后面的资源的访问。在 Paging 中实现这种类型的分层数据的规范方法是使用 RemoteMediator
,您可以将其传递给 Pager
的构造函数。
RemoteMediator
本质上充当回调,当 PagingSource
没有数据可从数据库加载时触发,然后您可以在其中进行网络获取,将新项目写入数据库,然后使 Paging 失效以获取新项目。这看起来很迂回,但它确保您拥有单一的事实来源,因此您应用中显示和加载的所有项目都基于数据库中的内容。
我想使用网络绑定资源,这意味着带有分页 3 的房间缓存。如果有人做过,请post你的回答谢谢。
来自 architecture-components-samples 的 NetworkBoundResource
只是一个帮助程序 class 包装对网络 + 数据库缓存后面的资源的访问。在 Paging 中实现这种类型的分层数据的规范方法是使用 RemoteMediator
,您可以将其传递给 Pager
的构造函数。
RemoteMediator
本质上充当回调,当 PagingSource
没有数据可从数据库加载时触发,然后您可以在其中进行网络获取,将新项目写入数据库,然后使 Paging 失效以获取新项目。这看起来很迂回,但它确保您拥有单一的事实来源,因此您应用中显示和加载的所有项目都基于数据库中的内容。