【问题标题】:How do you combine multiple gradle flavors or exclude one?你如何结合多种 gradle 口味或排除一种?
【发布时间】:2020-03-24 13:23:17
【问题描述】:
flavorDimensions("color")

productFlavors {
    register("red") {
        setDimension("color")
    }
    register("blue") {
        setDimension("color")
    }
}

redImplementation("red library")
blueImplementation("blue library")

这会生成构建变体: 蓝色调试, 蓝色释放, 红色调试, 红色发布

但除了这些之外,我还想要一个组合这两者的构建变体,因此最终列表将是: 蓝色调试, 蓝色释放, 红色调试, 红色释放, 蓝红调试, blueRedRelease

如果你有不同的风味维度,你最终只会得到 blueRed 组合。

如何设置我的 gradle 脚本来支持这种情况?最终目标是能够选择是否只需要红色库、只需要蓝色库或两者的组合。

【问题讨论】:

    标签: android gradle build.gradle gradle-kotlin-dsl android-build-flavors


    【解决方案1】:

    由于您已经拥有 bluered 库模块,因此您的应用可以具有以下风格:

    • blue,这取决于 blue
    • red,这取决于 red
    • blueRed,这取决于 bluered

    我假设 bluered 库可以并排包含。

    flavorDimensions("color")
    
    productFlavors {
        register("red") {
            setDimension("color")
        }
        register("blue") {
            setDimension("color")
        }
        register("blueRed") {
            setDimension("color")
        }
    }
    
    redImplementation("red library")
    blueImplementation("blue library")
    blueRedImplementation("red library")
    blueRedImplementation("blue library")
    

    【讨论】:

      【解决方案2】:

      我认为这是不可能的。我可以推荐你阅读this article 以了解更多关于口味的信息。

      看看doc

      【讨论】:

        猜你喜欢
        • 2018-07-13
        • 2016-02-01
        • 1970-01-01
        • 2017-09-15
        • 1970-01-01
        • 2017-10-19
        • 1970-01-01
        • 2020-09-25
        • 2023-04-03
        相关资源
        最近更新 更多