Android 應用構建速度提升Gradle配置優化
0.使用最新版本的 Android Gradle 外掛
找到專案跟目錄的build.gradle
1.避免啟用舊版的 Multidex
minSdkVersion 21(或大於21)(21 之前的 API 級別並沒有原生的支援 multidex)
2.禁用 Multiple APK 構建
if (project.hasProperty('devBuild')) {
splits.abi.enable = false
splits.density.enable = false
//禁用 PNG 壓縮
aaptOptions.cruncherEnabled = false
}
3.最小化使用資原始檔
...
minSdkVersion 21
resConfigs("en", "xxhdpi")
...
4.禁用 PNG 壓縮(方法合併到第2條)
5.使用 Apply Changes
6.避免被動的改動
applicationVariants.all { variant ->
variant.outputs.all { output ->
// 刪除unaligned apk
if (output.zipAlign != null) {
output.zipAlign.doLast {
output.zipAlign.inputFile.delete()
}
}
/*時間相關的不要加
String time = appBuildTime as String
if (null == time || time.isEmpty()) {
time = getTime()
}
def versionName = VERSION_NAME*/
output.outputFileName = "app_${appBuildTypes}.apk"
}
}
7.不使用動態版本標識
8.Gradle 記憶體分配調優(合併到第9條)
9.開啟 Gradle 構建快取
# Default value: -Xmx1024m -XX:MaxPermSize=256m
org.gradle.jvmargs=-Xmx5120m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
#守護程式
org.gradle.daemon=true
#並行編譯
org.gradle.parallel=true
#開啟快取:
android.enableBuildCache=true
#開啟孵化模式:
org.gradle.configureondemand=true
#開啟gradle快取
org.gradle.caching=true
10.設定java版本(直接全域性配置)
allprojects {
repositories {
jcenter()
...
}
tasks.withType(JavaCompile) {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
參考資料:
https://blog.csdn.net/devilnov/article/details/53321164
相關文章
- Android中的Gradle之配置及構建優化AndroidGradle優化
- Android Note - 構建速度優化Android優化
- 怎樣將Gradle構建速度提升90%Gradle
- 優酷 Android 構建速度優化實踐Android優化
- 用Gradle 構建你的android程式GradleAndroid
- Android Gradle基於引數化配置實現差異化構建AndroidGradle
- 使用新 Android Gradle 外掛加速您的應用構建AndroidGradle
- Gradle for Android ( 構建變體 )GradleAndroid
- vue-cli2 構建速度優化Vue優化
- Android Gradle Groovy自動化構建進階篇AndroidGradle
- Gradle自動實現Android元件化模組構建GradleAndroid元件化
- Android應用優化方案Android優化
- 【Java】【Gradle】Gradle構建SpringBoot專案,Gradle模組化管理JavaGradleSpring Boot
- 使用 happypack 提升 Webpack 專案構建速度APPWeb
- Gradle 與 AGP 構建 API: 配置您的構建檔案GradleAPI
- 通過Gradle自動實現Android元件化模組構建GradleAndroid元件化
- [譯]改善 Android Studio 的構建速度Android
- Android應用優化之冷啟動優化Android優化
- webpack--效能優化之打包構建速度和程式碼除錯優化Web優化除錯
- Gradle中的差異化構建Gradle
- Gradle For Android(2)--基礎的定製構建GradleAndroid
- 使用 Webpack 的 DllPlugin 提升專案構建速度WebPlugin
- Gradle系列之Android Gradle基礎配置GradleAndroid
- 前端優化:DNS預解析提升頁面速度前端優化DNS
- Android效能最佳化之加快應用啟動速度Android
- 【效能優化實踐】優化打包策略提升頁面載入速度優化
- 修改gradle指令碼,加速spring4.1原始碼編譯構建速度Gradle指令碼Spring原始碼編譯
- Android Gradle進階配置指南AndroidGradle
- Gradle自動化專案構建之Gradle學習及實戰Gradle
- Android應用優化之流暢度實操Android優化
- Gradle系列(三) Gradle配置構建和渠道包Gradle
- 分析並優化 Android 應用記憶體佔用優化Android記憶體
- 小程式redux效能優化,提升三倍渲染速度Redux優化
- Android Gradle 依賴配置:implementation & apiAndroidGradleAPI
- Android Studio Gradle 常用配置詳解AndroidGradle
- android studio4.0初次gradle配置AndroidGradle
- Android打包之配置構建變體Android
- Gradle之多專案構建Gradle