gpt4 book ai didi

android - 带缓存的自定义 AsyncTaskLoader

转载 作者:太空宇宙 更新时间:2023-11-03 11:25:38 25 4
gpt4 key购买 nike

有几个关于如何实现自定义 AsyncTaskLoader 的教程,但我发现没有一个讨论如何处理数据缓存 - 在所有这些教程中,数据都只是加载和传送。

您能否给我一些提示,说明如何实现自定义 AsyncTaskLoader,它会立即返回数据的缓存版本,但同时请求更新数据并在数据到达时立即提供更新版本?这甚至可以通过加载器实现,还是我必须使用另一种机制?

背景:我有一个 IntentService,它接受数据加载请求并在广播中传送结果。我有一个 UI (ListView),它应该显示来自 ArrayAdapter 或 CrusorAdapter 的数据。我需要一些“缓存”层来保持最新已知版本的数据立即显示,但在新数据到达时立即发布更新并重新显示它们。

虽然这可以通过使用哑 SQLite 数据库作为即时版本并使用广播接收器来更新新数据来完成,但我更喜欢一些可以使这种“backgorund”数据加载机制透明的东西,比如 Loader 派生类恕我直言.

最佳答案

是的,AsycnTask 是执行此操作的最佳方式。您要做的就是在 AsyncTaskonPostExecute() 上写入您的缓存。这可以通过创建比较数据时间的时间戳来完成,如果有新时间,则使用该数据。否则,您将不得不比较所有数据,这可能会占用宝贵的时间和资源,因此这取决于您拥有多少数据。

这是一个可能有帮助的链接:

http://developer.android.com/training/efficient-downloads/redundant_redundant.html

关于android - 带缓存的自定义 AsyncTaskLoader,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12055299/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com