Android apk 多渠道打包

Android Gradle 多渠道打包配置

 需求

 Android app发布一般会有多个渠道,为了跟踪发展情况,通常会为每一个渠道定制一个特别的apk。

 

有些sdk要求在AndroidManifest.xml配置渠道号,如友盟统计的渠道ID定义如下,以wandoujia为例

如果不使用第三方统计,自己也可以在AndroidManifest.xml中定义类似meta-data 如果每个渠道都手工修改,打包,10几个渠道下来整个人都不好了。咱还是自动化来得方便 

解决方案

 Gradle Android Plugin 0.10 新增了Manifest Merger, 

它可以替换Manifest中对应key的值,可以利用Product flavor + manifestPlaceholder 来替换对应渠道的key 

假如我们有wandoujia,google_play,两个渠道,可以这么写 

AndroidManifest.xml:

 build.gradle: 

 

也可以使用简化如下

 

 

 

 

 

有时候可能需要修改几个变量,如在打爱游戏外放的包的时候:

 

 

 

那么脚本可以写成如下格式(内容自行修改)

 

posted @ 2015-04-09 10:19  lvyuan197  阅读(199)  评论(0编辑  收藏  举报