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名称

这篇博客介绍了一个在Android构建过程中判断是否为AAB(Android App Bundle)模式的方法。通过遍历gradle.startParameter.taskNames来获取当前执行的任务,如果匹配到`bundle*Release`,则返回true,表示当前是AAB模式。这个判断用于在defaultConfig中动态设置BuildConfig字段。
&spm=1001.2101.3001.5002&articleId=121790526&d=1&t=3&u=8d9c433c74374bbc857bde715a6407be)
1万+

被折叠的 条评论
为什么被折叠?



