如何从gradle.properties获取属性

时间:2014-11-05 23:34:31

标签: android gradle android-gradle

如果我使用命令行在gradle.properties文件中设置属性,如下所示:

gradle build -Dproperty=myString

在我的Android项目资源目录中有一个configuration.properties,如何让configuration.propertiesgradle.properties文件中读取新属性?

我尝试过以下设置:

gradle.properties

property=defaultString
anotherProperty=defaultBoolean

configuration.properties

myProperty=@property@

潜力解决方案1 ​​

为每种风格使用configuration.properties文件。

每个风味资源听起来都是个好主意,但我希望在main中有一个默认列表,并且只覆盖所需的属性。我有很多属性,有些风格只需要覆盖一个。所以这确实有效,但并不理想。


潜力解决方案2

使用buildConfigField将我需要的内容传递给Java代码。

这里的问题是我有两个模块:appapi - 其中apiapp的依赖关系。在buildConfigField app中设置build.gradle可让我在app代码中访问它们,但我还需要从api模块访问它。< / p>

1 个答案:

答案 0 :(得分:0)

要改变每个flavor的属性值,可以使用每个flavor的资源文件。有关详细信息,请查看Android Gradle plugin docs

PS:如果属性值仅用于激活代码库的不同部分,请考虑使用每个风味代码。