使用 Gradle 构建配置字段不起作用

Using Gradle Build Config Fields Not Working

我正在尝试使用我的 build.gradle 中的 API_URL 来进行改造,但我在 RetrofitServices 文件中收到“未解决的引用”错误,我该如何解决?

    flavorDimensions "environment"
    productFlavors{

        create("develop"){
            dimension = "environment"
            applicationIdSuffix = ".develop"
            versionNameSuffix = "-develop"
            buildConfigField "String", "API_URL", "\"https://rickandmortyapi.com/\""
        }

        create("production"){
            dimension = "environment"
            applicationIdSuffix = ".production"
            versionNameSuffix = "-production"
            buildConfigField "String", "API_URL", "\"https://rickandmortyapi.com/\""
        }
    }
object RetrofitServices {

    val instance: Retrofit
        get()  {
            val httpClient = OkHttpClient.Builder()
                .addInterceptor(HttpLoggingInterceptor().setLevel(HttpLoggingInterceptor.Level.BODY))
                .build()

            return Retrofit.Builder()
                .baseUrl(BuildConfig.API_URL)
                .addConverterFactory(GsonConverterFactory.create())
                .client(httpClient)
                .build()
        }
}

当您将 buildConfigField 添加到 Gradle 设置时,这会告诉构建工具将所需的字段添加到 BuildConfig。但是,添加字段不会在您键入 build.gradle 时立即发生。它会在应用程序的下一个版本中发生。然后,应该会出现新字段。

因此,在尝试引用新字段之前构建应用程序,之后新字段应该就在那里。

如果该字段似乎没有显示:

  • 确保导入正确BuildConfig

  • 确保您的 build.gradle 设置为每个可能的构建变体定义了 buildConfigField