android 网络图片缓存策略

网络获取图片可以利用url来进行唯一标识。利用应用程序静态变量和文件缓存图片。大概实现为:

利用static Map<String , Bitmap> imageCache 储存图片。

首先从imageCache中获取图片bmp = imageCache.get(url)。

如果imagCache中没有该图片从文件中获取。先将url进行MD5编码 获得文件名fielname,bmp = Utils.loadImageFromFile(filename , cacheDir);(Utils.loadImageFromFile()为自定义方法,为从缓存文件中获取图片。这里cacheDir = getCacheDir();应用程序从网络上获取图片后都会缓存于应用程序缓存中).

最后如果缓存文件中还是没有图片则从网络上获取:bmp = Utils.loadImageFromNet(url);(这里Utils.loadImageFromNet(url) 为自定义从网络上获取图片)。

这里都是利用AsyncTask异步加载图片。

 

关于android 缓存数据策略方案:

android有几种储存数据的方法

1.利用SQLite(适合经常读写数据)

2.以文件方式储存(适合较大文件)

3.SharePreferences储存(适合较小文件)


你可能感兴趣的:(android,sqlite,网络,url)