的Android gradle这个全局常量

问题描述:

我想在摇篮到每次构建动态加载远程性能,并在文件的gradle使用价值:的Android gradle这个全局常量

-settings.gradle 
-build.gradle (project) 
-build.gradle (module : lib) 
-build.gradle (module : app) 

我找到了解决办法,但我不知道,如果它的最好的一个:

在settings.gradle,我恢复性质类似:

//cfg is a java Properties class (key/value) 
gradle.ext.cfg = Plugin.configureProject("url") 

和我的gradle每个文件(的build.gradle例如用的applicationID(APP))使用这样的:

applicationId gradle.ext.cfg.get("appId") 

我试过使用rootProject.ext,但它在settings.grade中无法访问。

我试图创建自定义插件,但使访问的唯一途径的每一个地方是让静态属性内部和settings.gradle加载它,不知道它的更好..

是不是好在每个.gradle中使用gradle.ext?它正在工作,但也许有更好的解决方案。

THX

你可以在你的build.gradle加入这一行buildConfigField "boolean", "ISBOOLEAN", "false"这样的:

buildTypes { 
     release { 
      //some code 
      buildConfigField "boolean", "ISBOOLEAN", "false" 
      //somecode} } 

然后叫BuildConfig一个新的Java文件将包含您的变量来创建,然后您可以访问静态变量。

+0

是为Java常量我这样做,但我想对每个文件的gradle常量。我编辑我的帖子,我并不清楚对不起 – Lyofen