最近因项目需要,需要统计各个市场的下载量和其他数据,所以在打包的时候就需要针对每个渠道单独打包,如果渠道太多(你敢信我们既然需要打好几十个渠道的包),一个个的打包那简直就是浪费生命,所以就有了本文的产生。
下面以友盟统计为例(项目需要)开始说明:
- 第一步 在AndroidManifest.xml 里进行如下配置:
<meta-data
android:name="UMENG_CHANNEL"android:value="${UMENG_CHANNEL_VALUE}" />
- 第二步 在build.gradle 设置productFlavors:
- 第三步 : 执行gradle的 assembleRelease生成所有渠道包
如图所示,你只需要点击assembleRelease就可以剩下一杯茶的时间 ,默默的等待生成所有渠道包了。如果你只想生成某个渠道的包,则点击上图对应的名称就OK。
最后你发现生成的apk是默认的命名方式"app-wandoujia-release.apk"的方式,可能并不是你需要的命名,一般来说我们需要apk的名字带有项目名称,版本号,渠道等信息。 你可以采取如下的方式来完成:
reeaseTime 是定义在gradle前面的一个函数
这样修改后,你又可以剩下修改apk名称的时间去办其他的事情了。
最后传上最终生成的apk截图