文件名称:android 网络图片双缓存
文件大小:1.48MB
文件格式:ZIP
更新时间:2017-09-24 10:59:19
安卓 图片缓存 内存
Android每次加载图片很浪费时间。所以设计了一个图片缓存技术来解决每次android手机加载图片的问题 内存的读取速度是最快的,然后是文件的读取速度,最后是网络资源的读取 既然内存的读取时间最快,我们好好利用内存资源。将内存再分两层缓存 强引用缓存不会轻易被回收,来保存常用数据,不常用的资源放入软引用缓存中。 对于硬引用和软引用的介绍: ⑴强引用(StrongReference) 强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足的问题。 ⑵软引用(SoftReference) 如果一个对象只具有软引用,则内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的高速缓存 1,对于强引用和软引用的使用,我们首先去强引用缓存中去找图片资源,当没有发现时,就去软引用缓存中。当强引用的超额时,将最后使用的资源放入软引用缓存中,使用到软引用的资源时 ,则将资源重新放回强引用缓存池中。 2,内存缓存池中找不到,就去文件中查找, 3,再找不到就只好去网络上下载了,下载到以后,分别将资源放入文件缓存和内存缓存中
【文件预览】:
zf_img
----bin()
--------classes.dex(713KB)
--------res()
--------zf_img.apk(283KB)
--------dexedLibs()
--------classes()
--------resources.ap_(39KB)
--------AndroidManifest.xml(969B)
----res()
--------drawable-ldpi()
--------drawable-hdpi()
--------drawable-xhdpi()
--------drawable-xxhdpi()
--------values()
--------drawable-mdpi()
--------layout()
----proguard-project.txt(781B)
----ic_launcher-web.png(50KB)
----assets()
----gen()
--------com()
----android 网络图片双缓存.docx(15KB)
----src()
--------com()
----.project(842B)
----.classpath(475B)
----project.properties(562B)
----AndroidManifest.xml(969B)
----libs()
--------android-support-v4.jar(633KB)