我在 build.gradle 中定义了多种构建类型。在变体窗口中,我选择了构建变体(例如 debugAPI23)。我预计只会执行一种构建类型中的代码。但在 Gradle Console 中我可以看到所有构建类型的输出。
正如您所看到的,我正在尝试删除每种构建类型的特定文件。但每次都会执行所有构建类型。所以最后我丢失了我选择的构建类型应该存在的文件。
android {
buildTypes {
debug {
println "build type debug"
debuggable true
signingConfig signingConfigs.debug
sourceSets {
main.java {
exclude '/cz/kctdata/kmf/Reader/KMFReaderCN51A60.java'
}
main.java.getIncludes().each { println "Added include: $it" }
main.java.sourceFiles.each { println "File in source set: " + it }
}
}
release {
println "build type release"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
sourceSets {
main.java {
exclude '/cz/kctdata/kmf/Reader/KMFReaderCN51A60.java'
}
main.java.getIncludes().each { println "Added include: $it" }
main.java.sourceFiles.each { println "File in source set: " + it }
}
}
debugAPI23 {
println "build type debugAPI23"
debuggable true
signingConfig signingConfigs.debug
sourceSets {
main.java {
exclude '/cz/kctdata/kmf/Reader/KMFReaderCN51A42.java'
}
main.java.getIncludes().each { println "Added include: $it" }
main.java.sourceFiles.each { println "File in source set: " + it }
}
}
releaseAPI23 {
println "build type releaseAPI23"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
sourceSets {
main.java {
exclude '/cz/kctdata/kmf/Reader/KMFReaderCN51A42.java'
}
main.java.getIncludes().each { println "Added include: $it" }
main.java.sourceFiles.each { println "File in source set: " + it }
}
}
}
}
我无法使用特定于构建类型的文件夹,因为我有更多构建类型,并且某些文件应该以多种构建类型呈现。我不想在我的项目中拥有同一文件的多个副本。
最后的 gradle android 插件有一个新的概念“维度”。https://developer.android.com/studio/build/build-variants.html https://developer.android.com/studio/build/build-variants.html
所以你可以尝试使用口味和尺寸。一个例子:
android {
flavorDimensions "dim1", "dim2"
}
productFlavors {
flavor1 {
dimension "dim1"
}
flavor2 {
dimension "dim1"
}
flavor3 {
dimension "dim1"
}
flavor4 {
dimension "dim2"
}
}
在这里,您将获得构建类型+dim1偏好+dim2风味的组合,换句话说,来自flavor4的文件将可以在所有风味中访问。例如,在变量 debugFlavor1Flavor4 中,您将拥有属于 debug、flavor1 和flavor4 的所有资源
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)