如何在 Paging 3 中使用网络绑定资源?

How to use Network Bound Resource with Paging 3?

我想使用网络绑定资源,这意味着带有分页 3 的房间缓存。如果有人做过,请post你的回答谢谢。

来自 architecture-components-samplesNetworkBoundResource 只是一个帮助程序 class 包装对网络 + 数据库缓存后面的资源的访问。在 Paging 中实现这种类型的分层数据的规范方法是使用 RemoteMediator,您可以将其传递给 Pager 的构造函数。

RemoteMediator 本质上充当回调,当 PagingSource 没有数据可从数据库加载时触发,然后您可以在其中进行网络获取,将新项目写入数据库,然后使 Paging 失效以获取新项目。这看起来很迂回,但它确保您拥有单一的事实来源,因此您应用中显示和加载的所有项目都基于数据库中的内容。