它们到处告诉我们应该使用 ASyncTaskLoaders,因为它们非常擅长不阻塞 UI 线程。现在有 Volley 可以使用。
我想我们不能同时使用它们,因为 Volley 自己做背景。你怎么看?哪一个更好?
它们到处告诉我们应该使用 ASyncTaskLoaders,因为它们非常擅长不阻塞 UI 线程。现在有 Volley 可以使用。
我想我们不能同时使用它们,因为 Volley 自己做背景。你怎么看?哪一个更好?
这两种技术是不同的,几乎没有可比性。他们有不同的目的,也可以一起工作。例如,您可以实现一个使用 Volley 加载数据并直接从 Loader 继承的 Loader(不是 AsyncTaskLoader,因为 Volley 也处理线程)。
使用 Loaders 的主要优点:
使用 Volley 的主要优点:
您可以将两者结合起来以获得这两种优势,或者您可以使用 Volley 没有加载器及其简单的 API。
我已经使用 Volley 一个月了,我不得不说我非常满意。不必担心线程实现细节确实有很大帮助。到目前为止,通用网络和远程图像加载都运行良好。
并不是说没有问题,但到目前为止,问题很小。
你最好这样问 volley vs Async vs RxJava
您可以将此RXJava 用于后台线程,但为了提高调用 RESTful 服务的效率,强烈建议使用 Volley,与异步任务加载器相比,所需的编码也非常少!
这是一篇关于当前 Android 最佳实践的文章。它讨论了Volley和RXJava的使用:https ://github.com/futurice/android-best-practices
您可以将两者结合起来,以获得两种优势。
在您的活动(主线程)中,您使用 Volley 调用您的 API。使用简单的接口机制,您可以在数据可用时回调您的主线程。然后你forceLoad()
的 AsyncTaskLoader 使用来自 Volley 的新数据。在您的 AsyncTaskLoader 中,您可以为所有活动的容器补充水分。当数据可用时,它们将自动加载。
使用此方法,您可以结合 Volley 的自动磁盘缓存和 Loader 的自动同步。