原文: Android Studio批量打渠道包 - Stars-One的杂货小窝

公司项目渠道包越来越大,每次发版本都是开发人员打包,研究了下如何批量打渠道包,记录过程

步骤

1.gradle配置

android{

	//配置签名
signingConfigs {
release {
keyAlias 'key0'
keyPassword '123456'
storeFile file('sign/keystore')
storePassword '123456'
}
} buildTypes {
debug {
minifyEnabled false
signingConfig signingConfigs.release
}
release {
//这几个是混淆等压缩配置,可以不开,这里只是个示例
minifyEnabled true
shrinkResources true
zipAlignEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
//注意这里,需要使用上面配置的签名
signingConfig signingConfigs.release
}
} //不同的渠道
flavorDimensions "versionCode"
productFlavors {
huawei {
dimension "versionCode"
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "huawei"]
buildConfigField "int", "FLAVOR_TYPE", "1" //apk渠道:1华为、2小米、3oppo、4vivo、6快手(奇趣官网包也并入6快手架道)
}
xiaomi {
dimension "versionCode"
manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"]
buildConfigField "int", "FLAVOR_TYPE", "2"
}
} //更改输出的apk名称
applicationVariants.all { variant ->
variant.outputs.all {
outputFileName = "${productFlavors[0].name}-${defaultConfig.versionCode}-${defaultConfig.versionName}-${variant.buildType.name}.apk"
}
}
}}

2.执行gradle命令

原本是想通过命令行来进行的,但是执行的时候却是提示没有配置Java11环境,于是就想Android Studio里面都可以不用配置Java环境就可以执行的gradle命令

于是就找到了右侧的gradle命令面板

在里面执行下面代码即可

app:assembleRelease



PS: 可能是由于项目的关系,在检查lint会不通过,然后最后打完包Android Studio会提示说gradle task被取消,但是实际上是打包成功了,进入对应的app/build/渠道包/release/目录下,可以找到对应的apk文件

Android Studio批量打渠道包的更多相关文章

  1. Android Studio修改项目的包名

    android studio的修改包名,没有有Eclipse环境中那么好操作.也可能你对Eclipse的操作比较熟悉,对Andoid Studio的操作还不太熟悉.在项目的开发中,你可能遇到需要更改模 ...

  2. Android Studio下打jar包

    在我们使用Eclipse时,我们常常使用的第三方类库文件大多都是jar包形式,用起来很方便.但是jar包只能打包class文件,对于Android UI类库而言,我们常常需要打包资源文件,对于界面不多 ...

  3. Android Studio 如何打JAR包

    Android Studio 如何打JAR包 在eclipse中我们知道如何将一个项目导出为jar包,供其它项目使用.  在AS中可以通过修改gradle才处理.  我们新建一个项目MakeJar,在 ...

  4. Android Studio下导出jar包和aar包

    Android Studio下导出jar包和aar包 jar包和aar包的区别 步骤 1. 创建Android工程 创建工程比较简单,不错复述 2. 创建一个Library(Module) 创建了一个 ...

  5. 新建项目找不到android studio:appcompat v7:27.+包。

    1.我们在build.gradle(project)中添加maven中的google库: allprojects { repositories { jcenter() maven { url &quo ...

  6. Android Studio导入第三方jar包或依赖工程的方法

    Android Studio导入第三方jar包或依赖工程的方法   一 导入jar包的方法 1.打开自己的工程,将需要导入的jar包copy到libs文件夹下 2.在导入的jar包处单击菜单 Add ...

  7. 在Android Studio添加本地aar包引用

    1.如何在Android Studio添加本地aar包引用 https://jingyan.baidu.com/article/2a13832890d08f074a134ff0.html 2.完成上述 ...

  8. Android studio 自动导入(全部)包 import

    http://blog.csdn.net/buaaroid/article/details/44979629 1 Android studio 只有import单个包的快捷键:Alt+Enter.没有 ...

  9. Android Studio设置自动导包

    Android Studio设置自动导包. 步骤: (1)找到File->Settings (2)找到Editor->General->Auto Import (3)依照上图勾选几个 ...

  10. Android Studio 怎样打JAR包

    Android Studio 怎样打JAR包 在eclipse中我们知道怎样将一个项目导出为jar包,供其他项目使用. 在AS中能够通过改动gradle才处理. 我们新建一个项目MakeJar,在项目 ...

随机推荐

  1. 【Docker内容大集合】Docker从认识到实践再到底层原理大汇总

    前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助. 高质量博客汇总https://blog.cs ...

  2. idea启动springboot项目报错java.lang.ClassNotFoundException: com.gctl.bpm.GctlBpmApplication解决方案

    有时候父子工程改造springboot项目时会报错java.lang.ClassNotFoundException: com.gctl.bpm.GctlBpmApplication如下图所示 此时不要 ...

  3. ElasticSearch7.3学习(三十四)----生产环境集群部署总结

    1.集群部署 2.结点的三个角色 主结点:master节点主要用于集群的管理及索引 比如新增结点.分片分配.索引的新增和删除等. 数据结点:data 节点上保存了数据分片,它负责索引和搜索操作. 客户 ...

  4. 小知识:Oracle RAC添加服务名实现单节点访问

    环境:Oracle 11.2.0.4 RAC(2 nodes) 1.查看RAC IP配置信息 2.添加服务名并启动服务 3.停止服务并删除服务名 1.查看RAC IP配置信息 我们先查看下环境的IP分 ...

  5. Asp-Net-Core学习笔记:3.使用SignalR实时通信框架开发聊天室

    SignalR牛刀小试 在MVP杨老师的博客里看到这么个东西,我还以为是NetCore3才推出的新玩意,原来是已经有很多年的历史了,那看来还是比较成熟的一个技术了. 简介 SignalR是一个.NET ...

  6. NC15033 小G有一个大树

    题目链接 题目 题目描述 小G想要把自己家院子里的橘子树搬到家门口(QAQ..就当小G是大力水手吧) 可是小G是个平衡性灰常灰常差的人,他想找到一个这个橘子树的平衡点. 怎么描述这棵树呢...就把它看 ...

  7. NC19158 失衡天平

    题目链接 题目 题目描述 终于Alice走出了大魔王的陷阱,可是现在傻傻的她忘了带武器了,这可如何是好???这个时候,一个神秘老人走到她面前答应无偿给她武器,但老人有个条件,需要将所选武器分别放在天平 ...

  8. ORACLE cannot fetch plan for SQL_ID

    今天做SQL执行计划测试的时候,发现sqlplus无法正常打印执行计划,根据网上资料整理如下: ..... SYS@orcl> select *   2     from table(   3 ...

  9. Idea:Fetch failed: fatal: Could not read from remote repository

    今天在idea工具中fetch github仓库报错:Fetch failed: fatal: Could not read from remote repository 查了以下需要调整下setti ...

  10. 如何基于three.js(webgl)引擎架构,实现3D密集架库房,3D档案室(3d机器人取档、机器人盘点、人工查档、设备巡检)

     前言: 这是最好的时代,也是最坏的时代:是充满挑战的时代,也是充满机遇的时代.是科技飞速的时代,也是无限可能的时代. 近年来,人工智能(AI)技术的飞速发展已经席卷了全球,不断突破着技术边界,为各行 ...