0

要禁用BuildConfig使用 Groovy DSL 生成,可以执行以下操作:

afterEvaluate {
    generateReleaseBuildConfig.enabled = false
    generateDebugBuildConfig.enabled = false
}

我试图在使用 Gradle 的 Kotlin DSL (build.gradle.kts) 时找到等价物。有人对此有任何运气吗?

4

3 回答 3

1

您可以通过添加以下内容从所有变体中删除 BuildConfig:

图书馆用

android {
    ...

    // TODO replace with https://issuetracker.google.com/issues/72050365 once released.
    libraryVariants.all {
        generateBuildConfigProvider?.get()?.enabled = false
    }
}

申请

android {
    ...

    // TODO replace with https://issuetracker.google.com/issues/72050365 once released.
    applicationVariants.all {
        generateBuildConfigProvider?.get()?.enabled = false
    }
}

如果要指定构建类型,则:

libraryVariants
    .matching { it.buildType.name == "release"}
    .all {
        generateBuildConfigProvider?.get()?.enabled = false
    }
}
于 2019-09-27T07:56:40.410 回答
0

如果您有 Android Studio 4.1 或更高版本,您可以使用Build Features Field 为每个模块禁用它。

android {
    ...

    buildFeatures {
        buildConfig = false
        resValues = false
    }
}
于 2020-12-20T17:51:15.470 回答
0

我最终发现这也可以工作:

android { ... }

tasks.withType<GenerateBuildConfig> {
    isEnabled = false
}
于 2019-12-08T01:44:50.863 回答