我有一个使用~30种产品口味的项目。除了“主要”代码之外,它们的味道并不多,只有一些独特的资源。由于有这么多,我想构建我的代码目录,使其更有条理:
但是当构建版本与“main”文件夹不同时,构建版本无法识别它们的风格。我有什么方法可以做到这一点吗?
答案 0 :(得分:5)
我有一个使用~30种产品口味的项目
还有一个,你将匹配Baskin-Robbins' original ~31 flavors。
但是,当它们处于不同于" main"的范围时,它不能识别它们的味道。夹。我有什么方法可以做到这一点吗?
您可以覆盖模块的build.gradle
文件来源。虽然我没有尝试过你的场景(仅用于使用Gradle构建Eclipse风格的项目),但这样的事情应该有效:
android {
// lots of cool stuff here
sourceSets {
flavor1 {
manifest.srcFile 'src/productFlavors/flavor1/AndroidManifest.xml'
java.srcDirs = ['src/productFlavors/flavor1/java']
aidl.srcDirs = ['src/productFlavors/flavor1/aidl']
res.srcDirs = ['src/productFlavors/flavor1/res']
assets.srcDirs = ['src/productFlavors/flavor1/assets']
}
// lather, rinse, repeat
}
}
如果您坚持src/productFlavors/.../
的固定模式(其中...
是风味名称),您可以使用一些Groovy脚本来迭代一系列风味名称并连接相应的源集。