是否可以在gradle productFlavors中声明变量并在Java中使用它?

时间:2017-06-29 10:10:15

标签: android gradle android-gradle android-productflavors

我知道在buildTypes我可以声明,但我想在productFlavors声明。

喜欢这样:

productFlavors {
    f1 {
        some_variable: "v_f1"
    }
    f2 {
        some_variable: "v_f2"
    }
}

类似问题:

Is it possible to declare a variable in Gradle usable in Java?

2 个答案:

答案 0 :(得分:3)

是的,就像这样:

productFlavors {
    f1 {
        buildConfigField "boolean", "aBoolean", "true"    
        buildConfigField "String", "aString", "foo"
    }
    f2 {
        buildConfigField "boolean", "aBoolean", "false"    
        buildConfigField "String", "aString", "bar"
    }
}

然后在运行时,您可以访问它们:

if (BuildConfig.aBoolean) {
    // do something
}

答案 1 :(得分:0)

当然

通过BuildConfig.some_variable访问它。

您将获得变量值according to the build variant