Skip to content

Latest commit

 

History

History
22 lines (14 loc) · 832 Bytes

README.md

File metadata and controls

22 lines (14 loc) · 832 Bytes

图片缓存简单使用

三级缓存

  • 优先从内存中加载图片, 速度最快, 不浪费流量
  • 其次从本地(sdcard)加载图片, 速度快, 不浪费流量
  • 最后从网络下载图片, 速度慢, 浪费流量

内存溢出

  • 不管android设备总内存是多大, 都只给每个app分配一定内存大小, 16M, 一旦超出16M就内存溢出了

引用

  • 默认强引用, 垃圾回收器不会回收
  • 软引用, 垃圾回收器会考虑回收 SoftReference
  • 弱引用, 垃圾回收器更会考虑回收 WeakReference
  • 虚引用, 垃圾回收器最优先回收 PhantomReference

因为从 Android 2.3 (API Level 9)开始,垃圾回收器会更倾向于回收持有软引用或弱引用的对象,这让软引用和弱引用变得不再可靠。

  • 使用LruCache<String, Bitmap>替代HashMap<>