android - Gradle 构建生成的变量而不是字符串值

标签 android gradle

<分区>

我将此代码添加到我的 build.gradle 模块:app in android{} 部分。

 buildTypes.each 
    it.buildConfigField 'String', 'OPEN_WEATHER_MAP_API_KEY', "f4a8ad01f485a8276a6dbc4d364b"
}

但是它导致了错误

Error:(14, 57) error: cannot find symbol variable f4a8ad01f485a8276a6dbc4d364b

OPEN_WEATHER_API_KEY 值不是在 ""内部生成的

public final class BuildConfig {
     public static final boolean DEBUG = Boolean.parseBoolean("true");
     public static final String APPLICATION_ID ="com.example.weatherforecast";
     public static final String BUILD_TYPE = "debug";
     public static final String FLAVOR = "";
     public static final int VERSION_CODE = 1;
     public static final String VERSION_NAME = "1.0";
     // Fields from build type: debug
     public static final String OPEN_WEATHER_MAP_API_KEY = f4a8ad01f485a8276a6dbc4d364b;
}

在 FetchWeatherTask.java 类中,我有这行代码,它没有显示任何错误。

private final String APP_ID = BuildConfig.OPEN_WEATHER_MAP_API_KEY;

为什么在 BuildConfig.java OPEN_WEATHER_API_KEY 值中它生成为变量而不是字符串值?

最佳答案

你需要引用它:

it.buildConfigField 'String', 'OPEN_WEATHER_MAP_API_KEY', '"f4a8ad01f485a8276a6dbc4d364b"'

关于android - Gradle 构建生成的变量而不是字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33391382/

相关文章:

java - 我无法使用 gradle 导入快照

java - 如何在android客户端和自定义java服务器之间使用SSL套接字

android - 如何回收位图? - 位图大小超出 VM 预算

android - 提供图形 View 数据

gradle - 没有任务的Gradle同步

android - 如何在 Android Studio 中构建 'release' APK?

android - 以 xml 或以编程方式为 spinner 提供数组?

android - Android Studio 中的 Espresso 和 NoClassDefFoundError

gradle - 使用kaniko时无法在build.gradle UPD中访问gitlab-ci环境变量

gradle - 使用Gradle将子项目中的构建工件收集到RPM中