今天记录一下针对于各个项目的通用的一些优化项目编译速度的手段:
1.
针对于项目根目录的gradle.properties文件,可以打开下面的一些配置项:
# 开启守护进程
org.gradle.daemon=true
# 开启并行
org.gradle.parallel=true
org.gradle.configureondemand=true
#目前插件版本默认enableAapt2开关为开
android.enableAapt2=true
org.gradle.caching=true
2.
对于项目的app module,可以针对于debug版本进行如下配置:
buildTypes {
debug {
......
ext.enableCrashlytics = false
ext.alwaysUpdateBuildId = false
crunchPngs false
}
}
3.
针对于开发阶段,debug模式下我们还可以进行如下配置
项目根build.gradle下可以增加判断是否是debug相关task运行:
def isDebug() {
def taskNames = gradle.startParameter.taskNames
for (name in taskNames) {
if( (name.contains("install") || name.contains("assemble")) && name.contains("De")) { //简单匹配,类似于assembleDe即认定是debug模式
return true
}
}
return false
}
然后在app module的android块中进行debug模式判断:
android {
if (isDebug()){
// 针对于debug打包进一步作出部分编译优化
splits.abi.enable = false
splits.density.enable = false
aaptOptions.cruncherEnabled = false
compileOptions.incremental = true
}
4.如果说项目中使用到了kotlin,在使用了kapt的build.gradle文件加入:
kapt {
useBuildCache = true
}
在根目录的gradle.properties加入:
kapt.use.worker.api=true
kapt.incremental.apt=true
kapt.include.compile.classpath=false
5. 可以对dexOptions进行配置:
android{
......
dexOptions {
preDexLibraries true
maxProcessCount 8
}
}
另外加大studio的内存情况:
Android Studio 菜单栏Help -> Edit Custom VM Options,配置为-Xmx8g(电脑运存的一半)