问题标签 [android-paging-library]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android-paging - Android Paging 库——释放缓存数据
我阅读了一些关于Android Paging library的资源。虽然这个话题听起来不错,但我无法理解在DataSource+Network 场景中如何以及何时从 DataSource 释放资源。
如果我有一个非常大的列表(比如说数百 MB)并且我需要保持低存储空间怎么办?谁以及何时将清除底层数据源中未使用的行?
android - 我可以使用 Livedata 为 PageKeyedDataSource 创建数据吗?
我有一个需要分页数据的功能。为此,我正在尝试使用 JetPack Paging 库。
我已经设置PageKeyDataSource
并在示例中显示了看起来非常冗长的异步调用事件。特别是如果您必须多次调用才能创建列表。
相反,我已经有一个数据源可以进行多次调用,映射所有这些并返回一页项目的实时数据。
所以我在想类似下面的代码,但我想它需要 DataSource 中的观察者才能将列表传递给onResult
(getsomeCars 是 liveData)
有任何想法吗?
android - 分页库 Callback.OnResult 不返回值到 Livedata
我想实现jetpack分页库。
一切似乎都在工作,在从 api(使用 Retrofit2 和协程)获得响应后,android 分页回调正在调用他的 onResult 接口。
但是当接收到数据时,它并没有将它的值返回给主要活动中的 livedata。
解决办法是什么 ?
视图模型
ListDataPageSource
主要活动
分页配置
android - 从架构组件调试分页库
有什么方法可以帮助通过网络请求从架构组件调试分页库,好像解析JSON
响应时出现任何错误,库失败并返回空列表,但它没有给出任何指示解析失败的类
android - 边界回调的问题,如何正确使用它?
我从两个来源学习功能分页库。我找到了使用边界回调的简单方法,但我很困惑。
哪个方法将在主线程中首先被调用:boundaryCallback 方法或 Rx 观察者方法?
因为我们有两个不同的工作线程,一个线程是 Rx 线程,它从网络加载数据,另一个线程是 Room 线程,它从数据库加载数据,当 rx 线程完成插入事务时。
android - 分页库:跳转列表项+末尾总是相同的数据
我正在尝试使用分页库、MVVM 和 LiveData 实现一个无限列表。
在我的视图(在我的情况下是我的片段)中,我从 ViewModel 请求数据并观察变化:
在 ViewModel 中,我像这样获取我的数据:
在存储库中,我通过以下方式获取数据:
您可能已经注意到,我以 Google 的 Codelabs 为例,但遗憾的是我无法使其正常工作。
我的列表数据适配器:
我现在的问题是:数据在本地获取并保存,甚至在我的列表中正确显示。但是数据似乎是“循环”的,因此尽管数据库中有不同的对象(我与 Stetho 核对过,大约有几百个),但总是显示相同的数据。奇怪的是,列表中的最后一项也总是相同的,有时滚动时会重新加载项目。另一个问题是它会在某个时候停止重新加载(有时是 200 个,有时是 300 个数据项)。
我认为这可能是因为我的 ITEM_COMPARATOR 检查错误并返回了错误的布尔值,所以我将两者都设置为return true
只是为了测试,但这并没有改变。
我也在考虑向 LivePagedListBuilder 添加一个配置,但这也没有改变。所以我有点卡住了。我还研究了一些使用 PageKeyedDataSource 等执行此操作的示例,但 Google 的示例在没有它的情况下工作,所以我想知道为什么我的示例不起作用。 https://codelabs.developers.google.com/codelabs/android-paging/index.html?index=..%2F..index#5
编辑:
谷歌的蓝图中确实有另一个例子。我将它添加到代码中。https://github.com/android/architecture-components-samples/blob/master/PagingWithNetworkSample/app/src/main/java/com/android/example/paging/pagingwithnetwork/reddit/ui/RedditActivity.kt。
现在它正在正确加载,但是当加载发生时,列表中的某些项目仍然翻转。
编辑2:
我编辑了 BoundaryCallback,但仍然无法正常工作(现在提供了 Google 建议的 PagingRequestHelper)。
编辑3:
我只用远程部分试了一下,效果很好。Room/room 提供的数据源似乎存在问题。
android - Android 分页库 - PositionalDataSource 问题
我可以从服务器获取记录总数,所以我PositionalDataSource
用于网络调用。一切正常,但有一个问题:即使我不滚动,分页库也会继续从服务器获取所有数据。如何解决这个问题呢?使用:androidx.paging:paging-runtime-ktx:2.1.1
例子:
android - 为什么服务器响应后分页库不更新列表?
我正在尝试使用Kotlin Coroutines和Retrofit实现 Android jetpack 的分页库。调试后我发现观察不会在服务器响应成功时调用。
我是否缺少完整实施的东西?
这是我的PageKeyedDataSource实现
观察代码片