You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin表达式判定为true却走else分支的Android库模块问题

Android库模块自定义BuildType引发的BuildConfig异常与编译问题

配置情况

我的Android应用包含一个库模块,该模块的build.gradle中定义了如下buildTypes配置:

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
    create("full") {
        debuggable true
        buildConfigField "String", "BUILD_TYPE", "\"full\""
    }
}

遇到的问题

  • 执行清理重建操作后,调试时显示BuildConfig.BUILD_TYPE的值为full,表达式BuildConfig.BUILD_TYPE == "full"判定结果为true,但代码却进入了else分支;触发对应函数的按钮点击后,断点直接失效。
  • 尝试去掉转义字符,将BUILD_TYPE的设置改为"full"时,出现编译错误,错误信息如下:
com\..\..\BuildConfig.java:10: error: cannot find symbol
  public static final String BUILD_TYPE = full;
                                          ^
  symbol:   variable full
  location: class BuildConfig

环境信息

  • Android Gradle Plugin Version:8.0.1
  • Gradle Version:8.0
  • minSdk:2
  • targetSdk:33
  • Kotlin Version:org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.20

内容的提问来源于stack exchange,提问作者woberto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 03:47:04