首页 > 解决方案 > 如何在 Paging 3 中使用网络绑定资源?

问题描述

我想使用网络绑定资源,这意味着房间缓存与分页 3。如果有人这样做,请发布您的答案,谢谢。

标签: androidapipaginationandroid-roomandroid-paging

解决方案


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

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


推荐阅读