微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

WebpConvert_Gradle_Plugin Webp 批量替换图片 gradle 插件

程序名称:WebpConvert_Gradle_Plugin

授权协议: MIT

操作系统: Android

开发语言: Java

WebpConvert_Gradle_Plugin 介绍

webp转换插件可批量转换 build时
/build/intermediates/res/${flavorName}/${buildType}目录下的图片为webp格式,
打包出的apk就包含webp的图片了。

搜索目标文件的规则如下

  1. res下以drawable为开头的目录

  2. 后缀为png,jpg的文件

  3. 不包含.9图片

webp插件的运行时机是在 processXXXResource Task前 添加一个名为webpConvertPlugin的 task并执行

Android 从4.0开始对webp格式的文件都有原生支持,所以如果你apk 的minSdkVersion 是 15以上
你不需要修改任何关于图片使用的java代码

但请注意,如果你的项目里的jpg图片包含alpha值的设置,转换后的webp图片是不能再4.2.1以下正常运行的。

请参考:http://developer.android.com/guide/appendix/media-formats.html

  1. homebrew 安装方法

装了brew 工具的同学可以用brew install webp

  1. macports 安装方法

http://distfiles.macports.org/MacPorts/中寻找对应你系统的最新版MacPorts安装包下载并安装在终端依次运行以下命令

  1. export PATH=$PATH:/opt/local/bin
    sudo port selfupdate
    sudo port install webp

通过在终端键入 cwebp判断是否安装成功

安装遇到问题请参考:https://developers.google.com/speed/webp/docs/precompiled#installing_cwebp_and_dwebp_on_os_x_with_macports

  1. 在外层的build.gradle文件中(即与settings.gradle同级的文件添加如下代码

classpath ‘com.mogujie.gradle:webpConvertPlugin:1.1.34’

  1. 在内层build.gradle文件中(即与src同级的文件添加如下代码

  2. apply plugin: ‘webpConvert’
    webpinfo {
        //是否在debug时跳过webp转换
        skipDebug = true
        //是否显示log
        isShowLog = false
    }

  3. 在与src同级的目录下添加名为webp_white_list.txt的文件文件提供白名单功能 可以设置哪些文件不会被转换为webp文件,配置时,一个文件名为一行,如

  4. bill_footer_sitepro_arrow.png
    cart_checkBox_false.png

好了,万事具备,只要你clean后 assemble一发,png,jpg就替换成功了,打包出的apk就包含webp的图片.so easy

gradle clean
gradle assembleDebug

WebpConvert_Gradle_Plugin 官网

https://github.com/mogujie/WebpConvert_Gradle_Plugin

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐