有一个朋友在私信里问我,
1)Volley可以在SD卡中缓存图片,那可不可以在SD卡中缓存Json数据呢?
2)如果断网了,Volley是不是就不能用了,存在SD卡中的数据是不是就用不了了?
在Volley中,默认使用的缓存实现是 DiskBasedCache,在创建RequestQueue的时候,同时也会创建一个DiskBasedCache对象,如下:
RequestQueue queue = new RequestQueue(new DiskBasedCache(cacheDir), network);
而缓存文件的位置就是由CacheDir提供的,它的值如下:
在前面的VolleyDemo中,我们加载了一些图片,也加载了一些json数据,那么我们现在就来看看在缓存中的数据,有没有缓存图片的数据,同时,有没有缓存json的数据。
Volley文件夹下面有以下几条数据:
在文件夹中,以"-993813455"开头的文件,其实就是图片文件的缓存,而以-165747开头的那个文件,其实就是我们从天气网站拿下来的json数据的缓存,我们可以打开看一下里面文件的信息,下面是缓存文件-993813455-446463727的内容:
本文探讨了Volley框架中的缓存机制,特别是在SD卡上缓存图片和JSON数据的可能性。通过实例展示了如何在SD卡上成功缓存这两种类型的数据,并解释了断网情况下缓存数据的使用情况。
304

被折叠的 条评论
为什么被折叠?



