Gradle实现的两种简单的多渠道打包方法
来源:互联网 发布:哔哩哔哩 for mac 编辑:程序博客网 时间:2024/04/29 06:44
本来计划今天发Android的官方技术文档的翻译——《Gradle插件用户指南》的第五章的,不过由于昨天晚上没译完,还差几段落,所以只好推后了。
今天就说一下使用Gradle进行类似友盟这样的多渠道打包的方法吧。
本文原创,转载请注意在CSDN上的出处:
http://blog.csdn.net/maosidiaoxian/article/details/42000913
目前我掌握的方法有两种,都非常简单,用的都是Gradle Android插件里的productFlavors。
以友盟的多渠道打包为例,假设我们需要打包出如下渠道:UMENG, WANDOUJIA, YINGYONGBAO。
第一种方法,是需要创建文件的。
我们在写完我们的代码之后,在app/src下面,分别创建和main同级目录的文件夹umeng, wandoujia, yingyongbao,这三个文件夹里面都各只有一个AndroidManifest.xml文件,文件只需要如下:
然后在你的build.gradle的android{}节点里面,添加productFlavors节点,代码如下:
注意这里的flavors的名字要和你的文件夹的名字对应。这样配置之后,构建的就是多渠道的APK了。
第二种方法,不用创建那些文件,它使用的是Gradle Android插件里的另一个功能,manifestPlaceholders。
在这种方法中,你只需要在AndroidManifest.xml中,对友盟的渠道进行这样配置:
然后同样使用productFlavors,不过这时它的配置是这样的:
在上面当中,我们也可以指定一个默认的渠道名,如果需要的话。指定默认的值是在defaultConfig节点当中添加如下内容:
这里的Unspecified换成你实际上的默认的渠道名。使用manifestPlaceholders的这种配置,同样适用于manifest的其他配置。比如你需要在不同渠道发布的apk里面,指定不同的启动Activity。比如在豌豆荚里面发布的,启动的Activity显示的是豌豆荚首发的界面,应用宝里面启动的是应用宝首发的界面(哈哈,有点坏),你就可以对你的activity的值使用${activity_name}的方式,然后在productFlavors里面配置这个${activity_name}的值。
本文原创,转载请注明CSDN博客上的出处:
http://blog.csdn.net/maosidiaoxian/article/details/42000913
或作者:Geek_Soledad
- Gradle实现的两种简单的多渠道打包方法
- Gradle实现的两种简单的多渠道打包方法
- Gradle实现的两种简单的多渠道打包方法
- Gradle实现的两种简单的多渠道打包方法
- Gradle实现的两种简单的多渠道打包方法
- Gradle实现的两种简单的多渠道打包方法
- Gradle实现的两种简单的多渠道打包方法
- 简单的多渠道打包build.gradle模板
- Gradle App项目的多渠道打包实现
- Gradle Library项目的多渠道打包实现
- android gradle两种多渠道打包方式
- gradle实现多渠道打包
- Gradle实现多渠道打包
- Android Studio 使用Gradle多渠道打包的原理与方法
- 使用gradle的productFlavors实现Android项目多渠道打包
- 使用gradle的productFlavors实现Android项目多渠道打包
- Android 使用gradle的productFlavors实现多渠道打包
- 使用gradle的productFlavors实现Android项目多渠道打包
- QTableWidget 导出到表格
- BLE-NRF51822教程8-动态广播
- 安卓开发——浮动上下文选项与上下文菜单栏的实现
- 文本分析之数据收集
- 8步拥有免费QQ域名邮箱
- Gradle实现的两种简单的多渠道打包方法
- Android获取到wifi的信息
- BLE-NRF51822教程9—动态密码(配对码)
- 华为机试题:向升序单向链表中插入一个节点
- [Spring实战系列](4)Spring IOC容器
- 安卓开发——存储与加载本地文件
- js 验证码 倒计时60秒
- Windows下SVN备份脚本
- BLE-NRF51822教程10-手机动态修改设备名