android的多渠道打包

本文出处:http://www.cnblogs.com/0616--ataozhijia/p/4203997.html

这里以友盟为例子。

项目快上线了,要做一个多渠道打包。不然每次都要在AndroidManifest.xml文件里修改:

<meta-data android:name="UMENG_CHANNEL" android:value="wandoujia" />

每次都要修改value的值,简直蛋疼。

首先你必须在AndroidManifest.xml中的meta-data修改以下的样子:

<meta-data
android:name="UMENG_CHANNEL"
android:value="${UMENG_CHANNEL_VALUE}" />

其中${UMENG_CHANNEL_VALUE}中的值就是你在gradle中自定义配置的值。

build.gradle文件就利用productFlavors这样写:

productFlavors {

wandoujia {}
baidu {}
c360 {}
uc {} productFlavors.all { flavor ->
flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
} }

其中name的值对相对应各个productFlavors的选项值,这样就达到自动替换渠道值的目的了。

这样生成apk时,选择相应的Flavors来生成指定渠道的包就可以了,而且生成的apk会自动帮你加上相应渠道的后缀,非常方便和直观。

上一篇:在Apworks数据服务中使用基于Entity Framework Core的仓储(Repository)实现


下一篇:Spark之RDD