从服务端下载图片
下载成功后调用1内存缓存的putBitmap()函数,缓存图片。
在外部文件缓存中也写入一份,调用2的putBitmap()函数.
预览图片的流程
1) 若是预览的图片在内存缓存区中,直接调用1的getBitmap()函数,获取bitmap数据(先在硬引用缓存区查找匹配,若硬引用区匹配失败,再去软引用区匹配)
2) 若是从内存缓存区读取失败,再从外部文件缓存中读取,调用2的getBitmap()函数
3) 若是从外部文件缓存中读取失败,则从服务端下载该图片,过程3.
生成key值
private static String generateKey(String fileId, int width, int height) {
String ret = fileId + "_" + Integer.toString(width) + "x" + Integer.toString(height);
return ret;
}
String key = generateKey(...)便可生成惟一的key值 缓存