首页 > 解决方案 > 应用程序的构建类型在哪里定义?

问题描述

  1. 我知道我们可以在 Android Studio 中编辑构建类型:

    构建类型

  2. 我知道我们可以在 gradle 中编辑每个构建类型设置:

    android {
        buildTypes {
            release {
                minifyEnabled true
            }
        }
    
  3. 我知道我们可以检测代码中的构建类型。如何检测我是处于发布模式还是调试模式?

但是实际上在哪里定义了构建类型?假设我想将它提交给 git。我应该怎么做才能使项目的构建类型保持一致?

标签: androidandroid-studiogradleandroid-gradle-plugin

解决方案


构建类型实际上是在哪里定义的?

基本上,BuildConfig是位于 path 下的自动生成的类:

app/build/generated/source/buildConfig/yourBuildType/yourPackageName/BuildConfig.java

此类保存buildTypes {}应用程序级build.gradle文件中的块提供的变量。因此,在每次清理和重建项目时,Gradle都会自动生成BuildConfig可用于进一步Android 开发环境的类。


BuildConfig.DEBUG是我们可以在我们的应用程序代码中使用的默认变量来确定它是buildType.

我们可以通过 build.gradle 文件提供我们自己的字段buildType如下所示:

android {
. . .
    buildTypes {
        debug {
            buildConfigField "String", "SOME_VARIABLE", '"This string value is from build config class"'
        }
    }
. . .
}

推荐阅读