前几年刚接触android的时候,为了节省流量和图片快速展示,我们一般都适用软引用把图片保留在内存中。

随之android版本更新,垃圾回收机制对软引用的处理方式也在发生变化。之后的开发中我们要使用Lrucache和DiskLrucache来保存图片。

网上有很多人使用软引用加载图片的多,但是现在已经不再推荐使用这种方式了,

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

(2)另外,Android 3.0 (API Level 11)中,图片的数据会存储在本地的内存当中,
因而无法用一种可预见的方式将其释放,这就有潜在的风险造成应用程序的内存溢出并崩溃,

所以我这里用得是LruCache来缓存图片,当存储Image的大小大于LruCache设定的值,系统自动释放内存,
这个类是3.1版本中提供的,如果你是在更早的Android版本中开发,则需要导入android-support-v4的jar包

更多相关文章

  1. Android面试系列文章2018之内存管理之Bitmap的加载篇
  2. Android中的内存溢出和内存泄漏问题
  3. 发布android app到android market的方法
  4. Android开发周报:Android相机开发、内存泄漏总结
  5. Android环境配置与HelloWorld程序(Windows)
  6. Android中如何把bitmap存成BMP格式的图片
  7. android使用.9,png图片作为背景的问题
  8. unity 导出 android安装包配置方案
  9. Android(安卓)性能优化之内存检测、卡顿优化、耗电优化、APK瘦身

随机推荐

  1. android中获取网络图片
  2. RadioButton 带下划线切换的案例
  3. android ImageButton 左中右分段排列
  4. Android(安卓)9编译报错sdclang设置
  5. Android(安卓)配置环境
  6. Android开发环境搭建
  7. android中遍历arrayList的四种方法
  8. Layout布局
  9. Android(安卓)ListView例子
  10. Android梅花布局,遥控器布局