android的多渠道打包
Posted 夜空
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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会自动帮你加上相应渠道的后缀,非常方便和直观。
以上是关于android的多渠道打包的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio多渠道打包和代码混淆教程 亲测可用