android - 为特定的 flavor 和buildType定义buildconfigfield

标签 android gradle android-gradle-plugin build-tools

我有2种口味,可以说 Vanilla 和巧克力。我也有Debug和Release构建类型,我需要Vanilla Release的字段为true,而其他3个组合应该为false。

def BOOLEAN = "boolean"
def VARIABLE = "VARIABLE"
def TRUE = "true"
def FALSE = "false"

    VANILLA {

        debug {

            buildConfigField BOOLEAN, VARIABLE, FALSE

        }

        release {

            buildConfigField BOOLEAN, VARIABLE, TRUE

        }


    }

    CHOCOLATE {
        buildConfigField BOOLEAN, VARIABLE, FALSE
    }

我遇到错误,因此我猜想调试和发布技巧不起作用。有可能这样做吗?

最佳答案

循环变体并检查其名称:

productFlavors {
    vanilla {}
    chocolate {}
}

applicationVariants.all { variant ->
    println("Iterating variant: " + variant.getName())
    if (variant.getName() == "chocolateDebug") {
        variant.buildConfigField "boolean", "VARIABLE", "true"
    } else {
        variant.buildConfigField "boolean", "VARIABLE", "false"
    }
}

关于android - 为特定的 flavor 和buildType定义buildconfigfield,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62932789/

相关文章:

jdbc - 如何在Gradle项目中使用Oracle JDBC驱动程序

grails - 是否可以在 grails 之外使用 GroovyPageParser 或 GroovyPagesTemplateEngine

gradle - 如何使用 Gradle Kotlin-dsl 添加新配置

android - 如何告诉Android Studio不要在jniLibs文件夹中查找特定库?

android - Android Studio : still getting warning, need to update 'compile' to 'implementation'

android - 支持可穿戴设备的应用程序未出现在 Play 商店中,并且所有设备都不兼容

java - SQLite 插入时出现空指针异常

android - Gallery setSelection 不会触发图像选择器

android - gradle 项目同步失败。基本功能(例如编辑、调试)在 android studio 1.0.1 中将无法正常工作

android - 滚动 ListView 后无法将项目添加到 ListView