需要仅在发布版本构建变体中排除特定类。你能请谁给我点建议吗?
在build.gradle文件中使用:
android {
compileSdkVersion 31
defaultConfig {
...
}
buildTypes {
...
}
sourceSets {
main { //<-- flavour name (usual values are: "main", "release", debug")
java {
exclude '**/*_old.java'
exclude '**/*_new.java'
exclude '**/*_backup.java'
}
}
}
}
编辑:
在/main/风味中:
class ClassBase {
}
在/debug/风格中:
class ClassA extends ClassBase {
private ClassC mIncriminatedReference; //<-- ClassC is the incriminated Class you won't
}
在/释放/风味中:
class ClassA extends ClassBase {
/*no reference to ClassC here*/
}
然后,在为Release构建时,您可以使用/extend/instante ClassA(将根据当前的活动风格选择正确的ClassA(而不会出现错误。
(我知道这很棘手,但这是在构建时不使用自定义预处理器作为"插件"的唯一方法(