Android APP极限瘦身—— WebP 图片优化

作者: 谁动了我的代码 | 来源:发表于2022-09-24 21:01 被阅读0次

    概述

    WebP(发音 weppy),是一种支持有损压缩和无损压缩的图片文件格式,派生自图像编码格式 VP8。根据 Google 的测试,无损压缩后的 WebP 比 PNG 文件少了 45% 的文件大小,即使这些 PNG 文件经过其他压缩工具压缩之后,WebP 还是可以减少 28% 的文件大小。

    Webp的优点

    • 减少文件的大小(这个优势觉得足够用了)
    • 但达到和JPEG格式相同的图片质量

    将PNG转换WebP的效果

    将三种图片同时在手机上显示查看效果,图片类型如下:

    1. 原图
    2. 原图无损压缩(58%)
    3. 原图转WebP(有损压缩75%)


    从上图可以看出三种图片从肉眼看是无差别的

    PNG转WebP是可以控制有损压缩比例的,上图有损压缩75%,肉眼查看无差别,那其他的压缩比例呢?

    接下来我们继续做实验查看:

    三张图片进行对比

    第一张为原图、第二张为使用tinypng在线压缩过的图片、第三张为WebP不同压缩比例的图片

    • 无损压缩转换
    • 有损压缩(75%)转换
    • 无损压缩(50%)转换
    • 无损压缩(0%)转换


    通过图片效果对比和上表数据分析,WebP的有损压缩75%是图片肉眼看是无差别的,文件体积减少也是较大的,是官方推荐方案

    Demo测试

    在android项目中,对webp图片的使用和jpg没有任何不同,因此只需将项目中的图片替换成对应的webp格式的图片,完全不用修改代码就能实现图片及apk的压缩。(需要注意 minSdkVersion 17)

    接下来会对不同品质压缩的webp图片与原图作对比,查看效果:

    1.首先是无损压缩

    可以看到图片的大小直接减少了一半,运行到手机中看下效果。


    从肉眼上基本看不出区别,webp无损压缩可以减少图片一半的大小而达到同样无损的效果。

    2.有损75%压缩的webp

    压缩后的图片大小为原图的44%,同样地,我们看下手机中的效果


    对比画质,粗看的话看不出区别,细看的话还是能看出线条稍微优点模糊。

    3.有损30品质的webp

    压缩后的图片大小仅有原图的22%


    个人感觉和75%的压缩没啥区别。。。。。

    4.最低品质压缩

    压缩后的图片大小仅有原图的20%


    这下很明显了,一眼就能看出压缩过,但对于一些小的图片,可以采用最低品质的压缩,能极大地减小图片的大小。


    以上就是Android WebP 图片优化的效果展示;Android应用开发中APP的深度优化是很有必要的,不管是在面试还是在大厂中。优化这一块技术始终是长用到的。所以Android优化学好是进阶技术的重要部分;如需学习Android性能优化这块技术的可以点击这里↓↓↓获取,资料来自于腾讯高级Android开发。【搜集整理】

    总结

    APP的功能越来越多,APP的体积也随之增长。这会给用户的升级带来困扰,影响用户体验,因此app的瘦身就显得尤其重要了。app瘦身的方法有很多,随便一搜便能找到很多方案,例如开启混淆,开启shrinkResources,去除大型的第三方库等等。都是简单易于操作,并且效果明显的。除此之外,图片资源在apk中也是占据非常大的部分的,目前google官方都推荐的方法是使用webp代替jpg、png等图片。

    相关文章

      网友评论

        本文标题:Android APP极限瘦身—— WebP 图片优化

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