Volley本地缓存广告、开屏图片(一)

这是最近的一个项目需求:每次打开软件更新广告图片
即每次打开软件就向服务器请求新的图片集合,然后下载图片集合缓存至本地,如果服务器增加了新的图片或是删除了图片,图片与本地的图片一致则不下载,不一致则下载,并删除本地的不一致图片。
我是这么理清楚这之间的逻辑关系:
假设服务器图片是集合A,本地图片是集合B,A集合需要执行下载操作,B集合需要执行删除操作。
例如:
服务器A{1,2,3}
本地B{2,4}
新本地C{2,4}
需要删除1,3,下载4
这样一个关系是:
对于下载操作求本地B-服务器A的集合,当B为空时,则下载整个A集合
对于删除操作求服务器A-本地B的集合,当A为空时,不删除。

但是现在图片类型是多种的~也就是有开屏图片,主页顶部广告图片等。但请求图片链接的请求只有一个,服务端返回的数据类似:链接URL+ImgType类型

对于开屏图片,每次打开软件,就直接从本地SD卡里面去加载,如果本地SD卡里没有开屏图片,就从drawable文件里面去加载,无论是哪种方式都要去请求图片链接,下载到本地。

此时,必须要读取本地SD卡文件夹的图片将图片的标题形成集合

根据链接地址下载图片
将图片存在本地SD卡目录下

猜你喜欢

转载自blog.csdn.net/u012451520/article/details/50550874
今日推荐