Android图片的获取和存储
2014-02-28 11:03
162 查看
如果每次加载同一张图片都要从网络获取,那代价实在太大了。所以同一张图片只要从网络获取一次就够了,然后在本地缓存起来,之后加载同一张图片时就从缓存中加载就可以了。从内存缓存读取图片是最快的,但是因为内存容量有限,所以最好再加上文件缓存。文件缓存空间也不是无限大的,容量越大读取效率越低,因此可以设置一个限定大小比如10M,或者限定保存时间比如一天。
因此,加载图片的流程应该是:
1、先从内存缓存中获取,取到则返回,取不到则进行下一步;
2、从文件缓存中获取,取到则返回并更新到内存缓存,取不到则进行下一步;
3、从网络下载图片,并更新到内存缓存和文件缓存。
接下来看内存缓存类:ImageMemoryCache
文件缓存类:ImageFileCache
从网络获取图片:
最后,获取一张图片的流程就如下代码所示:
因此,加载图片的流程应该是:
1、先从内存缓存中获取,取到则返回,取不到则进行下一步;
2、从文件缓存中获取,取到则返回并更新到内存缓存,取不到则进行下一步;
3、从网络下载图片,并更新到内存缓存和文件缓存。
接下来看内存缓存类:ImageMemoryCache
相关文章推荐
- 再论Android中的OnTouch事件和MotionEvent
- 【Android】synchronized
- Android跨应用间的数据传输
- 实现电话自动拨打、挂断
- Android之内存泄漏调试学习与总结
- Android 网页抓取乱码问题解决方案
- Android 内部存储常用知识
- Android lint的使用
- android 应用内切换语言
- Android多媒体开发 Pro Android Media 第二章 创建自定义相机应用 2
- android监听安装和卸载示例
- Android设置来电号码归属地
- Android中的Context
- Android 版本变更概要(1.5-4.2)持续更新中。。。。。。。
- android关机充电的奥妙所在(留着以后用)
- android:paddingLeft和android:paddingLeft区别
- 查看Android中用到的签名文件(keystore)的内容
- 关于android报错
- MTK android 下载及启动过程
- android Context 上下文的几点解析