0

我正在为 Android 开发一个应用程序,其中有很多对服务器的 http 请求来获取一些数据。我的回复包括大量图片以及 JSON 格式的文本。

我想使用适当的缓存(如 Google Play、Google plus 和其他应用程序使用)使我的应用程序运行得更快。

我已经了解 android Volley库,并尝试并开发了一些示例进行测试,它的服务非常好,并且可以按预期完美地缓存我的图像。但是最近在互联网上进行相同的研究时,我开始了解您为请求响应HttpResponseCache安装缓存的类。Http

现在我有点困惑我应该去哪个,我已经尝试过 Volley 但没有尝试使用HttpResponseCache.

我的问题是:

他们在内部做同样的事情吗?

如果没有,哪个会更好。

您的专家建议或经验将为我节省大量时间。

4

1 回答 1

0

我可以说说我的经历。我的任务是一样的。我不得不下载很多图片和其他请求。我的第一次尝试是基于 HttpUrlConnection 并使用 HttpResponseCache。它工作,但下载速度不够快(12kb 图像已下载约 1.5-2 秒,这太长了)。所以我必须找到新的更快的解决方案。
我知道 volley,但不知道其中的一些功能,尤其是下载优先级。主要目的正是优先考虑,所以我开始创建自己的解决方案。我尝试使用 apache HttpClient 而不是 HttpUrlConnection,它确实更快,相同的图像已经下载了 200 到 300 毫秒。
我无法使用 HttpUrlConnection 获得更快的速度,但由于我不是专家,我认为有一个小错误并且 HttpUrlConnection 可以更快地工作,不幸的是这个问题对我来说仍然是关闭的。
如果查看 Volley 源代码,它使用 API >= 9 之后的 HttpUrlConnection 类,以及 API 级别 9 之前的 HttpClient 类。我没有用 volley 测量下载速度,所以我不能说它是否快。
所以,我得出了什么结论,我的解决方案至少花费了我 3 或 4 天,如果我知道 volley 具有下载优先级,也许我不必写它(如果它也很快的话)。回答你的问题,是的,Volley 也在做同样的事情,如果你不需要做一些特别的事情,你可以使用 Volley,它比编写自己的解决方案要快得多。

于 2014-02-26T09:09:33.223 回答