我目前正在重构一个 Android 项目,该项目在一些地方在后台线程上加载数据以更新列表视图。被调用来收集数据的 API 有一个回调机制,所以当返回大量数据(需要很长时间)时,我可以异步处理结果。
在旧代码中,此数据被打包为适当的对象并传递到 UI 线程上的句柄中,以插入到列表视图的适配器中。这很有效,但我决定通过 ContentProvider 呈现数据将使项目更易于维护和扩展。
这意味着当通过查询方法请求时,我需要将数据作为 Cursor 对象提供。
到目前为止,我在重新调整光标后无法更新光标中的数据。这是否意味着在返回 Cursor 之前需要收集所有数据?Android LoaderThrottleSupport示例表明我没有,但我还没有让它适用于 SQL 后端以外的任何东西。
有没有其他人尝试过以这种方式呈现非 SQL 支持的异步数据?