android – 在Gradle中,是否可以根据其他构建配置字段创建一个布尔构建配置字段?

在Gradle中,如何基于其他构建配置字段创建布尔构建配置字段?

例如:

buildConfigField BOOLEAN, TEST_A, "false"
buildConfigField BOOLEAN, TEST_B, "false"
buildConfigField BOOLEAN, TEST_C, TEST_A && TEST_B

解决方法:

这段代码写在你的android.defaultConfig块中,完全是这样的:

  buildConfigField("boolean", "TEST_A", "false");
  buildConfigField("boolean", "TEST_B", "false");
  buildConfigField("boolean", "TEST_C", "TEST_A && TEST_B");

这会在BuildConfig.java中生成以下行:

  public static final boolean TEST_A = false;
  public static final boolean TEST_B = false;
  public static final boolean TEST_C = TEST_A && TEST_B;

在以这种方式声明构建配置值时要注意一件有趣的事情,如果你看看BuildConfig.java是如何构造的,你可以看到在特定构建类型中声明的字段(例如android.buildTypes.debug)出现在声明的字段之前在认配置中.

因此,在提供的示例中,如果您希望TEST_C依赖于实际构建类型,则需要在构建类型级别声明TEST_A和TEST_B,而不是在认级别.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...