当前位置: 首页 > 知识库问答 >
问题:

BuildConfigField布尔值在库项目中始终为false

牛越
2023-03-14

我正在Android Studio中构建一个库,并希望有一个名为性能的布尔值设置为true。但是,它返回false,我需要修复它。

我按照正常步骤创建字段。当BuildConfig中的performance设置为true时,就会出现我的问题。java,但java代码执行时就好像它是假的一样。库构建变量为performance,应用程序变量为debug

下面是Java代码,它在库文件中将性能评估为false。此外,“BuildConfig.BUILD\u TYPE”返回“debug”

    if (BuildConfig.performance) {
        // do the thing
    }

构建。gradle库的文件

android {
    buildTypes {
        release {}
        debug {}
        performance {}

        // set "performance = true" for performance build type
        libraryVariants.all { variant ->
            variant.outputs.all {
                if (variant.getName().contains("performance")) {
                    variant.buildConfigField "Boolean", "performance", "true"
                } else {
                    variant.buildConfigField "Boolean", "performance", "false"
                }
            }

        }
    }
}

从另一个SO链接,我尝试了以下内容,但没有成功

android {
    publishNonDefault true
}

共有1个答案

鲍宁
2023-03-14

构建变体中,指定以下字段:

  release {
      ...
      buildConfigField "Boolean", "performance", "false"
  }
  performance {
      ...
      buildConfigField "Boolean", "performance", "true"
  }
 类似资料:
  • 我有以下代码: 我的问题是在onCreate函数中,我有以下两行代码: 工作完美无瑕。但是m\u TrackDriver总是正确的。不管我按什么按钮。有人能解释为什么会这样吗? 提前感谢您的帮助。

  • 我有一个项目列表,我在网页上显示其内容。每个项目都有一个布尔值来表示它是否已被选中。下面给出了. xhtml文件和后备bean项目。问题是每次我选择或取消选择网页中的布尔按钮时,它总是将后备bean中的布尔属性设置为false。 .xhtml Project.java(背豆)

  • 这导致了另一个问题:我在运行在application类之前的DataBaseProvider中使用DEBUG变量,由于这个bug它将不能正常运行。

  • 问题内容: 哪种列类型最适合在MySQL数据库中使用布尔值?我用,但我的同事用。 问题答案: 这些数据类型是同义词。

  • 我的应用程序使用一个库项目“核心项目”和应用程序核心,然后针对每个支持的设备的特殊性进行小项目“子项目”,即。亚马逊Fire TV、Kindle平板电脑、普通谷歌平板电脑、手机等。 比方说,我有一个自定义视图类,它以编程方式扩展布局。两者都在核心项目上: 然而,自定义视图在核心项目res/layout下不断膨胀另一个视图(毕竟听起来合乎逻辑,因为它们都位于同一个项目中)。 有没有办法改变这种行为?

  • 问题内容: 我遇到了这种语法: 这个带有两个点的语法是什么? 在哪里可以找到有关它的信息? 它仅适用于布尔值还是以其他不同方式实现? 问题答案: 是条件运算符。(不只是一部分,整个方法参数是示例中条件运算符的一种用法。) 它通常被称为三元运算符,但这只是其本质的一个方面-具有三个操作数- 而不是其名称。如果在Java中引入了另一个三元运算符,则该术语将变得模棱两可。之所以称为条件运算符,是因为它有