【干貨】一鍵壓縮Android項目中png的大小!

今天給大家介紹的是一款A(yù)ndroid Studio上的gradle插件:img-optimizer-gradle-plugin(歡迎star給予支持),該插件的作用歸結(jié)為一句話:

一款用于優(yōu)化png圖片的gradle插件,有效減少APK體積,支持極限壓縮和無損壓縮。

如何使用

在Project的build.gradle文件中:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0-alpha5'
        classpath 'com.chenenyu:img-optimizer:版本號'
    }
}

然后在你想要優(yōu)化的module的build.gradle文件中:

apply plugin: 'img-optimizer'

然后在task tree里面就可以看到對應(yīng)的task:

task.png

雙擊即可執(zhí)行。task的名字受當前module的命名影響。

支持的配置項

可以在module的build.gradle文件中添加配置選項,來自定義任務(wù):

optimizerOptions {
    triggerSize 5
    type "lossy"
    suffix "_opt"
}
  1. triggerSize 用于過濾圖片,小于該值的圖片不會進行優(yōu)化。默認為0,即每張圖片都進行優(yōu)化。
  2. type 優(yōu)化類型,目前支持"lossy""lossless""lossy"為極限壓縮(推薦,速度快,壓縮率高),"lossless"為無損壓縮(速度慢,壓縮率低,與原圖無差別)。
  3. suffix 優(yōu)化后的圖片后綴。假如配置為"_opt"ic_launcher.png經(jīng)過優(yōu)化后,將會生成ic_launcher_opt.png。默認為空,即覆蓋原圖。

效果預(yù)覽

原圖 極限壓縮(lossy) 無損壓縮(lossless)
526K 195K(減少63%) 473K(減少10%)

說明

如果項目有多個module,請在相應(yīng)的build.gradle中配置plugin,每個module相互獨立。執(zhí)行task后會在module根目錄下生成log文件,詳細記錄了每張圖片的優(yōu)化情況,方便查看。


最后,再貼一下源碼地址,希望大家試用之后都能star支持一下。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容