Volley ImageLoader在旧设备上确实很慢

时间:2013-06-05 11:52:17

标签: android lazy-loading android-volley

有没有人能够在旧设备上测试Volley?

我有一个ZTE Blade,它有一个800mhz的核心CPU。

我发现Volley会在加载图像前等待4-5秒甚至更长时间,即使它们已经在磁盘上也是如此。

同样的代码在我的Galaxy S2和Xoom上非常快速。

我使用过Universal-Image-Loader,它在旧设备上没有任何问题,一切都很活泼。

不确定如何调试它。

我甚至从位图解码中删除了同步对象,但是完全无济于事。

我有一个新的应用程序要发布,并且必须在没有ICS前支持的情况下发布,因为性能非常糟糕。

1 个答案:

答案 0 :(得分:8)

Volley中ImageLoader的行为似乎针对缩略图的“页面”进行了调整,而不是更长或连续的流。为此,ImageLoader的响应实际上在传递之前被延迟/批量处理。因此,准备好的图像不会尽快传递,以实现一种页面加载美感,在Google I / O谈话中简要说明。

http://www.youtube.com/watch?v=yhv8l9F44qo

您可以使用以下

删除此行为
mImageLoader = new ImageLoader(mQueue, imageCache);
mImageLoader.setBatchedResponseDelay(0);

我不知道为什么这会在一天结束时导致任何问题,因为它只是意味着延迟100毫秒,我不认为它延长了基于新内容到达的延迟,但将继续调查并报告我找到的任何其他内容。但这确实解决了旧设备的响应能力,而新设备当然仍然是黄油。