我正在使用 Gradle 构建我的 Android 应用程序。我正在尝试根据构建类型(发布或调试)使用一些标志。
我的 Gradle 文件如下所示:
android {
buildTypes {
debug {
buildConfigField 'boolean', 'PREPROD', 'true'
buildConfigField 'boolean', 'STAGING', 'false'
}
release {
buildConfigField 'boolean', 'PREPROD', 'false'
buildConfigField 'boolean', 'STAGING', 'false'
}
}
}
如果我尝试调用 BuildConfig.PREPROD 或 BuildConfig.STAGING 我会收到“无法解析符号”错误。
Gradle 同步成功了,不知道是不是忘记了一些步骤才能使用这个功能?
生成的BuildConfig.java文件如下(在build/source/buildConfig/debug/com.example.myapp中):
package com.example.myapp;
public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String PACKAGE_NAME = "com.example.myapp";
public static final String BUILD_TYPE = "debug";
public static final String FLAVOR = "";
public static final int VERSION_CODE = 400;
public static final String VERSION_NAME = "";
}
最佳答案
确保您的文件正在导入正确的 BuildConfig 类。有时如果您有其他项目库或模块,它可能会导入错误的 buildConfig。 确保您的导入类似于 com.project.app.BuildConfig。我遇到了同样的问题,问题是这样的,希望它可以帮助某人。
关于android - Gradle buildConfigField BuildConfig 无法解析符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22604627/