什么是修复基于光盘的缓存大小的最佳方法?? android -volley

时间:2014-01-23 03:19:30

标签: android caching android-volley

1)android -volley中存在的基于光盘的缓存的默认实现被分配了5MB的总内存。

2)但我开发的应用程序包含很多图像。所以我想增加基于光盘的缓存分配的内存大小。

3)所以我想增加缓存的大小。我可以通过更改Diskbasedcache.java文件中的DEFAULT_DISK_USAGE_BYTES值来简单地做到这一点。

4)但是我想根据光盘中可用的空间量来分配内存?有没有办法实现它?

1 个答案:

答案 0 :(得分:3)

关于Volley缓存的一些想法:

使用基于磁盘的L1缓存可能会导致i / o阻塞问题。 Volley已经有一个隐含的磁盘L2缓存。 BitmapLruImageCache 是内存缓存实现中基本的“最近最少使用的”。它速度快,不会阻止I / O.这是推荐的方法。

我建议你玩这个L1 cache for Volley

调整大小看看:

RequestQueue volleyQueue = Volley.newRequestQueue(this);
DiskBasedCache cache = new DiskBasedCache(getCacheDir(), 16 * 1024 * 1024);
volleyQueue = new RequestQueue(cache, new BasicNetwork(new HurlStack()));
volleyQueue.start();

参考:Volley cache 关于凌空缓存的其他参考http://www.jayway.com/2013/10/04/image-caching-with-volley/