一.使用前提条件:
首先需要增加webp的环境配置:
通过https://storage.googleapis.co...
下载你对应的电脑的webp的压缩包,解压,将其添加到path路径下,比如我的电脑是windows的64位系统,配置的path路径为:D:\libwebp-0.6.0-windows-x64\libwebp-0.6.0-windows-x64\bin。配置好了,你可以打开terminal,输入cwebp,看下能否找到这个命令,如果能找到就证明环境配置成功了。
二.使用方式,根目录的build.gradle增加
buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}//新增maven地址
}
dependencies {
classpath "gradle.plugin.org.wellijohn.androidwebpconvert:webppluginlibrary:1.1.13"//增加库地址
}
}
在app根目录下的build.gradle增加apply plugin: "org.wellijohn.androidwebp"引入webp插件
三.可通过app下面的build.gradle进行配置压缩比率,配置是否需要进行webp转换
androidwebp {//注意应该放在最外层
isOpen true //控制是否需要进行webp转换,因为在开发环境可能因为转化耗费时间,true代表进行webp转化。
quality 70 //设置压缩比率是70
}
四.原理
通过我们在构建gradle的时候,其中的mergeResources之后,进行遍历资源路径,找到png的图片进行控制台命令进行转换webp,如果成功了,我们将原来的png图片进行删除。
五.使用的效果
在一个生产的项目中,我们如果对其进行webp转换,如果没有webp的情况,
然后开启webp,这个时候减少了800KB左右:
当然这只是一个测试项目,我之前放在生产的项目中,可以减少3M左右,欢迎各位亲们使用,同时也能提出点改进意见。
六.注意点
当然你们的项目在使用webp插件的情况,首先需要确认4.3之前系统是否有使用,因为webp的使用在Android4.3之前的系统情况下,使用webp会失去透明度,如果你们的使用都是在4.3系统以上,那就放心使用吧。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。