Android Gradle的多渠道构建

发布和推广的渠道不同,造成了生成的App可能有多个,来写写如何配置多渠道构建来细分他们

根据BuildType 我们可以构建debug或者release版本的包,而根据Product Flavor我们可以构建不同渠道的包,所以安卓层级来说,我们可以简单的把apk包细分成buildType+product Flavor的类型, 参考:debug_baidu.apk   debug_xiaomi.apk,release_baidu.apk,release_xiaomi.apk之类的细分;

Product Flavor就是用来构建多渠道打包的东西;


Android Gradle的多渠道构建_第1张图片

上图就是在productFlavors中构建多个渠道,每个渠道都是一个闭包

但是仅仅是上图配置,就会报以下错误


我们需要使用到预先定义 好 flavorDimensions,配置完成后,gradle的Tasks中也生成对应的渠道任务


Android Gradle的多渠道构建_第2张图片

现在我们重新构建生成渠道包


Android Gradle的多渠道构建_第3张图片

以上就是标准的构建多渠道包方式;


此外我们还可以通过配置对渠道包进行定制

1:为渠道设置特有的包名


Android Gradle的多渠道构建_第4张图片

然后对比正常安装包和渠道包的结果


Android Gradle的多渠道构建_第5张图片
正常安装包


Android Gradle的多渠道构建_第6张图片
百度渠道包

此外,上文中在buildType支持的属性,在配置渠道包时候也大都能支持,可以在渠道定义的闭包中修改渠道包属性;

你可能感兴趣的:(Android Gradle的多渠道构建)