1、获取当前执行的根task。因为android节点为Configure project,要早于任何task,所以基于task顺序的方式都无法使用。例如,要区分当前为aab编译模式,并传入BuildConfig:
private boolean isAabMode() {
// 在tasks列表有时有多个任务,只要有一个就可以,具体看情况
for (tn in gradle.startParameter.taskNames) {
if (tn != null && tn.matches("bundle(\\w*)Release\$")) {
return true
}
}
return false
}
android {
defaultConfig {
buildConfigField "boolean", "AAB_MODE", "${isAabMode()}"
}
}
gradle.startParameter.taskNames[0] 可以获取当前启动的task名称