如何通过Gradle构建不同的Android变体

3

我已经有了

2个版本(staging,production)

2个构建类型(debug,release)

除此之外,我想为不同的供应商创建不同的变体,例如针对三星和HTC的生产发布构建。这是否可以通过构建脚本实现?

PS:我不想使用第三方插件,如这个


你已经创建了两种口味,我不明白为什么不能使用相同的过程来创建其他口味? - Kai
@kai 因为这类变量是第三级别的变量,类似于生产发布版本,只是不同的供应商会有不同的品牌参数。我同意这可以通过 buildTypes 实现,但对于每个供应商,我需要两个条目,虽然管理还好但稍微有点凌乱。 - Ankit
我现在明白你的意思了,但我认为你真的不需要一个“暂存-发布”构建吧?在这种情况下,您只需要定义3种构建类型(暂存、生产-调试、生产-发布),将口味留给品牌/定制目的。这就是我为我的一个项目所做的,我对设置感到满意。 - Kai
1个回答

3
你可以使用口味维度。
android {
    flavorDimensions 'environment', 'vendor'

    productFlavors {
        staging {
            flavorDimension 'environment'
        }

        production {
            flavorDimension 'environment'
        }

        htc {
            flavorDimension 'vendor'
        }

        samsung {
            flavorDimension 'vendor'
        }
    }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接