我目前正在开发一个包含多个源集的Android项目。
我的问题是关于字符串资源。
大多数字符串资源都在main/res/values
目录中。
有一个名为foo
的备用源集,它覆盖了main/res/values
中的一些字符串资源。这很好用,但是我们可以调用foobar
这是另一个源代码集,foo
的版本略有不同。
是否可以将foobar
配置为使用foo/res/values
中定义的资源而不是默认返回main/res/values
?尽管源集都略有不同,但foo
和foobar
之间的资源必须相同,所以我只想写一次。
基本上在foobar
,如果我尝试获取字符串资源cat
,我希望它在foo/res/values/string.xml
中查看,就像我在foo
中创建资源一样;就像在foo
中一样;如果未定义该资源,则回退到main/res/values
。
有没有办法让我的项目能够构建这种行为?我在项目中重组源集的能力有限,所以我理解我提出的问题可能违背了一些传统做法。
答案 0 :(得分:0)
我的问题的解决方案是将以下内容添加到我的应用程序的build.gradle
中android.sourceSets {
foobar.res.srcDirs = ['src/foo/res']
}