博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
减小Android打包后的apk大小(webpPlugin-太大apk的福音)
阅读量:7175 次
发布时间:2019-06-29

本文共 1053 字,大约阅读时间需要 3 分钟。

一.使用前提条件:

首先需要增加webp的环境配置:

通过
下载你对应的电脑的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 plugin

然后开启webp,这个时候减少了800KB左右:

使用webp plugin

当然这只是一个测试项目,我之前放在生产的项目中,可以减少3M左右,欢迎各位亲们使用,同时也能提出点改进意见。

六.注意点

当然你们的项目在使用webp插件的情况,首先需要确认4.3之前系统是否有使用,因为webp的使用在Android4.3之前的系统情况下,使用webp会失去透明度,如果你们的使用都是在4.3系统以上,那就放心使用吧。

转载地址:http://mzdzm.baihongyu.com/

你可能感兴趣的文章
mysql 备份数据库脚本
查看>>
Linux文件系统上的特殊权限
查看>>
mysql四:数据操作
查看>>
Activity ca.ct.activity.OBaccaratActivity has leak
查看>>
Linux下 vi 操作Found a swap file by the name
查看>>
技术加油站:5月19日,技术大佬等你来撩
查看>>
Confluence 6 Microsoft SQL Server 设置准备
查看>>
android: BaseAdapter和ListView简单运用(08)
查看>>
服务器搭建:3.2、openresty图片压缩之 lua调用GraphicsMagick
查看>>
扫描识别控件Dynamic Web TWAIN v12.3.1发布,更新服务证书丨附下载
查看>>
windows环境中不重启电脑杀死占用某个端口的进程
查看>>
Kubernetes上的负载均衡详解
查看>>
iOS——重写Cell分割线
查看>>
Mongodb 之 安全权限控制
查看>>
httpclient发送网络请求
查看>>
可自动切换登录不同系统测试实例
查看>>
【JAVA的 IO流之FileInputStream和FileOutputStream】
查看>>
《UNIX环境高级编程》apue.h 头文件的问题
查看>>
(转载)Http 请求处理流程
查看>>
GetVersion和GetVersionEx
查看>>