我有一个Android项目,它使用Android.mk文件进行设置。我想在项目中引入构建变量,并基于Build_BRAND等构建变量来执行一些UI更改。
我的案例是:我在.bashrc
中的Ubuntu上导出了BUILD_BRAND。如果我echo $BUILD_BRAND
,我会在终端中打印出值。
我也做$(warning $(BUILD_BRAND))
,我可以在构建过程中看到值被打印出来,所以它是可用的。
但是,当我尝试在活动中执行System.getEnv("BUILD_BRAND");
时,会返回一个null。
问题是如何使BUILD_BRAND下的这个值对项目全局可用。
谢谢!
在我的案例中,解决方案是使用SystemProperties.get("the.property.name")
。
"the.property.name"
设置在位于核心的Makefile.mk中。
我还发现,我可以在构建时使用相同的Makefile.mk.将ENV变量导出到项目中
N.B-不能在运行时直接使用System.getEnv()
访问env-var!