1.首先在mainfest.xml文件中,给umeng_channel设置一个变量“${UMENG_CHANNEL_VALUE}”

2.在gradle中,配置flavors。

 productFlavors {yingyongbao {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_txyyb"]}s360 {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_360"]}baidu {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_baidu"]}xiaomi {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_xiaomi"]}huawei {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_huawei"]}meizu {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_meizu"]}lenovo {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_len"]applicationId 'com.songheng.beijingtianqikuaibao'}oppo {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_oppo"]}vivo {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_vivo"]}ali {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_ali"]}yingyonghui {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_yyh"]}sougou {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_sougou"]}anzhi {manifestPlaceholders = [UMENG_CHANNEL_VALUE: "bjtq_anzhi"]}}

3.可以直接签名打包了。

这么打包,apk所在路径:项目路径\app\app-anzhi-release.apk

4.自定义包名方式

  applicationVariants.all { variant ->variant.outputs.each { output ->if ('release'.equals(variant.buildType.name)) {def outputFile = output.outputFileif (outputFile != null && outputFile.name.endsWith('.apk')) {def buildLable = ""def buildName = ""// 是否是连接测试服务器版本if (rootProject.hasProperty('TestServer')) {buildLable = "${buildLable}_Test"} else {buildLable = "${buildLable}_Product"}//buildname 是channel名称variant.productFlavors.each { product ->buildName = product.name}// 是否是testin版本if (rootProject.hasProperty('TestIn')) {buildLable = "${buildLable}_TestIn"}def productName = "bjtqyb"def fileName = "${productName}_v${defaultConfig.versionName}_${releaseTime()}${buildLable}_${buildName}.apk"output.outputFile = new File("${rootDir}/outapks/", fileName)}}}}

转载于:https://www.cnblogs.com/shoneworn/p/7722936.html

android——利用gradle实现多渠道打包并自定义包名(umeng多渠道)相关推荐

  1. android 自定义apk名,Android Studio多渠道打包、自定义打包APK名称

    现在为了推广产品,会在多个渠道应用市场发布应用,为了统计不同渠道的数据,需要在应用中表明渠道,如果一个一个去修改打包效率会很低.AS为我们提供了简便的方法,可以多渠道打包,一次打包所有的渠道包. 1. ...

  2. python程序打包成apk_利用Gradle+Python3自动打包Android APK上传到蒲公英。

    利用Gradle+Python3自动打包Android APK上传到蒲公英. 面对每次都要打包一个版本发布给测试,都要手动打包签名~然后登录上传文件.这些繁琐的事情.于是就想到一句很经典的话,(人生苦 ...

  3. android app 马甲包,关于Android多渠道打包和马甲包问题

    多渠道打包 最近项目用到多渠道打包,虽然网上又很多资料, 但是我在实际使用的过程中还是遇到了些问题, 在这里记录下,希望能帮助到你! 首先配置你的渠道信息 : 配置渠道信息 这个时候渠道使用的签名配置 ...

  4. java自定义包名和类名不可同名

    java自定义包名和类名不可同名,如果同名,就有以下错误. 解决方法:修改包名或类名,即可. package test; //test是包名public class test { //test就是类名 ...

  5. 安卓多渠道打包(三)360加固多渠道打包

    如题,本次实践项目为使用360加固+多渠道打包. 首先,从官网下载360加固软件,博主使用的是windows系统. 360加固下载地址 选择对应平台下载即可. 代码地址在文末 实战: 一.代码设置 ( ...

  6. 五 Android Studio打包Eegret App (包名和签名,打出正式包)

    一 定义包名 如下图,在AndroidManifest.xml中的package就是包名 二 创建keystore 选择Build->Generate Signed APK 选择create n ...

  7. 获取android com包名,Android系统中获取进程(和顶端包名)

    概要: android L前我们可以使用 getRunningTasks(int maxNum) maxNum int: The maxNumnumber of entries to return i ...

  8. Android问题集锦之四十六:改包名后出现Error type 3

    背景: 为了和使用Eclipse的同学并行工作了,我将原Eclipse的项目中加入build.gradle,内容如下: android {compileSdkVersion 19buildToolsV ...

  9. 使用adb查看android应用程序的Package和Activity,包名和类名

    ​​ 1. 命令行输入 adb logcat>D:/log.log 2. 手机上运行app 3. ctrl + c 停止 4. 在D:/log.log目录下中查找相应的包名和类名,例如下列: c ...

最新文章

  1. AI 一分钟 | 特斯拉科技创新中心落户北京;麻省理工开发透视技术
  2. 是否顺应互联网大脑的发育趋势决定科技企业兴衰
  3. POJ 2955 Brackets(括号匹配一)
  4. oracle数值类型--LOB+ROWID/UROWID
  5. UVA-1515 Pool construction (最小割)
  6. java webpack_webpack将对象暴露为全局
  7. Android的一些布局小知识点
  8. python怎么执行csv文件_无法读取/打开/或对CSV文件python 3.4windows执行任何操作
  9. 高可用之KeepAlived(2):keepalived+lvs
  10. c语言python零基础教学_编程零基础应当如何开始学习 Python?
  11. 60-008-026-使用-命令-如何在flink中传递参数
  12. java 元祖_在java中对元组列表进行排序的有效方法
  13. Git:切换分支时,无法切换到分支
  14. React 组件生命周期详解
  15. 宝峰uv5r保存信道频率_宝峰UV-5R上中继台的信道存储设置方法
  16. unity商店demo学习:跑酷游戏
  17. Bazinga 题解
  18. [MAC]Google Drive下载大文件
  19. 勇士大战恶魔?这款桌游明明是套高质量原创手办
  20. 体感ar数字互动教学制作实现学生共享优质教育

热门文章

  1. Java web后端框架
  2. 单片机程序生产烧录工具
  3. hdu 5148Cities 树形dp
  4. ntohs, ntohl, htons,htonl inet_aton等详解
  5. springboot配置内置tomcat的日志
  6. [Mysql] 多表连接查询
  7. [BZOJ4430][Nwerc2015]Guessing Camels赌骆驼
  8. 网站故障和安全事件的应急预案
  9. 【算法笔记】极客时间 算法面试通关40讲 笔记  覃超
  10. [经验分享] 覃超线上直播课 如何快速搞定秋招算法面试