最近为从Firebase Storage读取图片有新想法
但对于Android的快取档案有些疑问,想问问各位先进
刚开始我为求方便,是利用Glide直接下载
并利用加入签名signature的方式避免一样档名的图片重复下载
StorageReference storageRef =
FirebaseStorage.getInstance().getReference().child("image").child("id");
RequestOptions options = new RequestOptions()
.signature(new ObjectKey("imageID"));
GlideApp.with(context)
.load(storageRef)
.apply(options)
.into(imageView);
目前这种方式运作很正常
但是图片缓存的时间似乎只维持到程式关闭前?
用户下次开启程式似乎又会重新下载?
我一直不太确定这种方式是如何运作,所以想问问各位
因为我看用户端的要求数与下载流量一直没变少的迹象
于是我想干脆让用户下载到手机内的cache资料夹
若是cache资料夹内有该档案则直接取用
Bitmap bitmap = BitmapFactory.decodeFile(file.getPath());
imageView.setImageBitmap(bitmap);
若没有档案再去下载,如此便能达到流量的控制
但若日积月累,档案会越来越多
想请问系统是否会自己清除?还是需要手动去清呢?
因为对于cache的特性比较不清楚,请教各位!