一、背景介绍
目前公司的Android项目都使用了WebP插件进行图片的优化。该插件主要是在线上打包系统进行build时才会进行的一个图片优化的动作。通过将PNG图片转换成webp格式减少包体积大小。目前最新的插件版本是1.0.4
二、当前WebP插件的实现
插件的实现机制比较简单,主要是通过三个Gradle Task来完成:
- DownloadLibTask
从https://storage.googleapis.com/downloads.webmproject.org/releases/webp/下载对应操作系统的webp工具包。 - DecompressTask
将下载的压缩包解压到特定目录 - ConvertTask
在对drawable资源遍历过程中,使用cwebp命令行工具,对其进行格式转换
cwebpPath + " -q " + getQuality() + " " + srcFilePath +