Android性能优化之图片优化

Android性能优化之图片优化

  • 图片OOM问题产生原因
  • 图片存储优化:
    • 使用webp替代png
    • 尺寸压缩
    • 质量压缩
    • 内存重用
  • Bitmap的内存管理
  • 图片的加载优化
    • 图片目录
    • 异步请求
    • 图片缓存
    • 网络请求
    • 懒加载
    • 超大图片处理
    • 图片加载框架

https://www.imooc.com/learn/1060

图片OOM问题产生原因

  1. 一个页面一次加载过多图片
  2. 加载大图片没有进行压缩
  3. Android列表加载大量 bitmap没有使用缓存

图片存储优化:

使用webp替代png

https://tinypng.com/

尺寸压缩

inJustDecodeBounds = true //只读取图片,不加载到内存中获取图片的宽高
inSampleSize 大于等于2 降低图片采样率

质量压缩

inPreferredConfig = Bitmap.RGB_565//用RGB_565替代ARGB_8888

内存重用

InBitmap 安装3.0后才能使用

Bitmap的内存管理

在 android3.0之前,对于像素数据的支持保存在本地内存中
从 android3.0开始,像素数据和位图都存储在 Dalvik堆中

图片的加载优化

图片目录

图片放置在xxhdpi下

异步请求

图片放在后台请求

图片缓存

对于列表中的图片进行缓存

网络请求

使用OKHttp进行图片请求

懒加载

当图片到可视区再进行加载

超大图片处理

使用BitampRegionDecoder

图片加载框架

Glide Fresco

你可能感兴趣的:(Android性能优化之图片优化)