美文网首页Android 开发必备
Android 性能优化之图片优化笔记(五)

Android 性能优化之图片优化笔记(五)

作者: 总会颠沛流离 | 来源:发表于2019-05-03 23:53 被阅读6次

    Android 中图片优化也是个常见的问题,否则 OOM 就会经常找上门来。

    图片的格式

    目前 Android 端支持的图片格式有 JPEG、GIF、PNG、BMP、WebP,但是在 Android中能够使用编解码使用的只有其中的三种
    JPEG、PNG、WebP

    • JPEG:是广泛使用的有损压缩图像标准格式,它不支持透明和多帧动画
    • PNG:是一种无损压缩图片格式,它支持完整的透明通道,由于是无损压缩,所以它的占用空间一般比较大。
    • GIF:它支持多帧动画
    • WebP:它支持有损和无损压缩,支持完整的透明通道也支持多帧动画,是一种比较理想的图片格式。

    图片压缩

    • 无损压缩 ImageOption
      ImageOption 是一个无损的压缩工具,它通过优化PNG 的压缩参数,移除冗余元数据以及非必须的颜色配置文件等方式,在不牺牲图片质量的前提下,既减小了 PNG图片占用的空间,又提高了加载的速度。
      有损压缩 ImageAlpha
    • ImageAlpha 是 ImageOptions 作者开发的一个有损的 PNG 压缩工具,相比较而言,图片大小得到极大的降低,当然图片质量同时也会受到一定程度的影响,经过该工具压缩的图片,需要经过设计师的检视才能上线,否则可能会影响到整个 APP 的视觉效果
      使用有损压缩工具 TinyPNG 等
    • PNG/JPEG 转换为 WebP
    • 尽量使用 .9格式的PNG 图,因为它体积小,拉伸不变形能够适配 Android 各种机型。

    图片加载和缓存

    常见的图片加载缓存库有 Picasso、Glide、Fresco

    • Picasso 是 Square 公司开源的图片加载库,它实现图片的下载和二级缓存缓存功能,库文件 120KB
    • Glide 是 Google 推荐的用于 Android 平台上的图片加载和缓存库,库文件 475KB
    • Fresco 是 Facebook 开源的功能强大的图片加载库,如对图片显示要求很高可选择该库。该库最显著的特点是实现了三级缓存,两级内存缓存一级磁盘缓存。库文件 3.4MB
    根据 App 对图片显示和缓存的需求从低到高的选择顺序:Picasso < Glide < Presco

    相关文章

      网友评论

        本文标题:Android 性能优化之图片优化笔记(五)

        本文链接:https://www.haomeiwen.com/subject/kketoqtx.html