我需要构建我的项目,并选择使用不同的资源和资源文件夹。因此,我不想手动替换资产和资源文件夹,而是想知道gradle.build或任何库中是否有任何方法来指定这些文件夹的路径。
我遇到了this文章,其中提到了不同口味的内容。这是正确的方法吗?如果是,我该如何更改文件夹的路径?
productFlavors {
flavor2 {
}
flavor1 {
}
}
sourceSets{
flavor2 {
resources.srcDirs = ['src/flavor2/java','src/commonFiles/java']
assets.srcDirs = ['/mybuilds/f2assets']
res.srcDirs = ['res-flavor2','res']
}
flavor1 {
resources.srcDirs = ['src/flavor2/java','src/commonFiles/java']
assets.srcDirs = ['/mybuilds/f1assets']
res.srcDirs = ['res-flavor1','res']
}
}
我不确定如何使用不同的路径。为什么" resources.srcDirs"有2条路径?
答案 0 :(得分:1)
构建口味是正确的方法。文件夹的名称是自动完成的,因此不需要在gradle中添加的代码。你唯一需要做的就是在app / src下 - 添加一个带有风味名称的文件夹,你可以在那里添加不同的res文件夹。在进行构建时,只需从Android Studio左下角的Build Variants视图中选择正确的风格。您的项目结构应如下所示:
project/app/src/main
project/app/src/flavor1/res
project/app/src/flavor2/res
并且在gradle中:
productFlavors {
flavor2 {
}
flavor1 {
}
}
请注意,默认情况下,gradle将从主文件夹中获取资源,如果它不存在,它将搜索该文件。因此,请确保您在flavor文件夹中拥有不同的资源,而不是在主文件夹中。