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優化
- Android 優化APP 構建速度的17條建議Android優化APP
- Android 優化 APP 構建速度的 17 條建議Android優化APP
- 使用Gradle構建Android應用內測版本GradleAndroid
- 提升開發效率-構建速度與快速配置
- vue-cli2 構建速度優化Vue優化
- 優化AndroidStudio的構建速度優化Android
- Android Gradle基於引數化配置實現差異化構建AndroidGradle
- Android效能優化之加快應用啟動速度Android優化
- 用Gradle 構建你的android程式GradleAndroid
- 使用新 Android Gradle 外掛加速您的應用構建AndroidGradle
- Gradle 構建 android 應用常見問題解決指南GradleAndroid
- Gradle for Android ( 構建變體 )GradleAndroid
- [Android、Java]加快gradle構建AndroidJavaGradle
- 元件庫webpack構建速度優化經驗總結元件Web優化
- Android Gradle Groovy自動化構建進階篇AndroidGradle
- Gradle自動實現Android元件化模組構建GradleAndroid元件化
- webpack--效能優化之打包構建速度和程式碼除錯優化Web優化除錯
- 用 Jenkins 自動化構建 Android 和 iOS 應用JenkinsAndroidiOS
- Jenkins+Gradle 實現 Android 自動化構建JenkinsGradleAndroid
- Gradle 與 AGP 構建 API: 配置您的構建檔案GradleAPI
- Android應用優化方案Android優化
- 深入淺出Android Gradle構建系統(四:自定義構建過程之配置manifest)AndroidGradle
- 用Gradle 構建你的android程式-依賴管理篇GradleAndroid
- 使用 happypack 提升 Webpack 專案構建速度APPWeb
- 使用 Webpack 的 DllPlugin 提升專案構建速度WebPlugin
- 前端優化:DNS預解析提升頁面速度前端優化DNS
- 通過Gradle自動實現Android元件化模組構建GradleAndroid元件化
- Gradle中的差異化構建Gradle
- 【效能優化實踐】優化打包策略提升頁面載入速度優化
- Android應用優化之冷啟動優化Android優化
- 如何構建 Android MVVM 應用程式AndroidMVVM
- Android App 優化之提升你的 App 啟動速度之理論基礎AndroidAPP優化
- 【Java】【Gradle】Gradle構建SpringBoot專案,Gradle模組化管理JavaGradleSpring Boot
- Android App 優化之提升你的 App 啟動速度之例項挑戰AndroidAPP優化