參考資料Optimize Your Build Speed | Android Stuido朴上,Speeding Up Your Android Gradle Builds (Google I/O '17)。
在我們使用AndroidStudio寫代碼忙得不可開交之前控乾,最好先用幾分鐘優(yōu)化gradle的編譯荣堰。
對于大多數(shù)大型項(xiàng)目而言葬燎,每點(diǎn)擊編譯運(yùn)行一次辫呻,都意味著耗費(fèi)喝1+杯咖啡的時間埋同,如果不幸是各種細(xì)微的調(diào)整劳较,debug后發(fā)現(xiàn)一處不起眼的代碼急著修改驹止,又或者搗鼓分支居然又提醒需要重新sync浩聋,這無疑會成為開發(fā)效率的噩夢。
所以臊恋,與其花時間聽著電腦編譯的悲鳴衣洁,不如先做一點(diǎn)gradle的優(yōu)化吧。
直接上代碼抖仅,可以再module的build.gradle里添加上
if (project.hasProperty('devBuild')) {
// disable multi-apk generation
splits.abi.enable = false
splits.density.enable = false
ext.enableCrashlytics = false
ext.alwaysUpdateBuildId = false
aaptOptions {
cruncherEnabled false // crunchPngs false 新版本用這個
}
}
然后在AndroidStudio-Preference-build-Compiler-Command-line Options加上
-PdevBuild
如圖
就那么簡單坊夫。
經(jīng)過測試,在未優(yōu)化之前撤卢,每次sync(不是clean)大概需要12min左右环凿,在優(yōu)化之后,大概需要2030s放吩,最快的一次是6s智听,簡直快得飛起。
還有
- 開啟offline mode
- 隨時更新gradle版本渡紫,Android插件版本到推,和AS版本
- 關(guān)閉instant run
- 關(guān)閉lint提示,僅在需要lint檢查時候開啟
- 用固定的versionCode和versionName
無關(guān)主題但又特別重要
買一個好電腦惕澎。