为什么80%的码农都做不了架构师?>>>   

Android 打包 - 自动生成apk文件名

小鸟:“牛哥,牛哥,问你个事咯!”

大牛:“啥事啊?”

小鸟:“就是我打包生成apk的时候,它的名称总是app-debug.apk 或者 app-release.apk,搞的我每次都要自己手动去修改名称,要发布到多个应用市场时,我都要修改好多次,累死宝宝了”

大牛:“你是不是想让它自动生成名字,一次操作可以生成多个不同的包呢?”

小鸟:“牛哥就是牛啊,我都还没说完就知道我想干啥了。”

大牛:“呵呵,下面就给你详细的讲解一下具体的步骤”

步骤

  1. 打开app中的build.gradle

  2. 在android{}同级的位置添加一个自定义的返回时间的方法 这一步可选,目的:主要用于调试,通过时间,你可以知道你哪个包是最新的,不用每次重新打的时候,还要进行删除操作

     def releaseTime() {return new Date().format("yyyy-MM-dd",TimeZone.getTimeZone("UTC"))}
    
  3. 在android{}中添加渠道名称

        productFlavors{develop{}produce{}qiku360{}xiaomi{}华为{}
    }
    
  4. 自动生成我们需要的名称

      android.applicationVariants.all { variant ->variant.outputs.each { output ->def outputFile = output.outputFileif (outputFile != null && outputFile.name.endsWith('.apk')) {//这里修改apk文件名def fileName = "test1_${variant.productFlavors[0].name}-${defaultConfig.versionCode}-${defaultConfig.versionName}-${releaseTime() }.apk"output.outputFile = new File(outputFile.parent, fileName)}}
    }
    
  5. 执行打包操作,之后我们这里生成的名称是test1_华为-1-1.0-2016-05-03.apk

build.gradle 总览

apply plugin: 'com.android.application'android {compileSdkVersion 23buildToolsVersion "23.0.2"defaultConfig {applicationId "com.mydesgin"minSdkVersion 19targetSdkVersion 23versionCode 1versionName "1.0"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}/** 添加渠道名称* */productFlavors{develop{}produce{}qiku360{}xiaomi{}华为{}}android.applicationVariants.all { variant ->variant.outputs.each { output ->def outputFile = output.outputFileif (outputFile != null && outputFile.name.endsWith('.apk')) {//这里修改apk文件名def fileName = "test1_${variant.productFlavors[0].name}-${defaultConfig.versionCode}-${defaultConfig.versionName}-${releaseTime() }.apk"output.outputFile = new File(outputFile.parent, fileName)}}}}dependencies {compile fileTree(dir: 'libs', include: ['*.jar'])testCompile 'junit:junit:4.12'compile 'com.android.support:appcompat-v7:23.2.0'
}/*
*定义函数
* */
def releaseTime() {return new Date().format("yyyy-MM-dd",TimeZone.getTimeZone("UTC"))
}

小鸟:“多谢牛哥,感觉姿势秒涨啊!”

转载于:https://my.oschina.net/cj0072016/blog/669027

纠结的名字 - 自动生成apk文件名相关推荐

  1. Python实现输入电影名字自动生成豆瓣评论词云图(带GUI界面)小程序

    Python实现输入电影名字自动生成豆瓣评论词云图(带GUI界面)小程序 一.项目背景 电影逐渐成为人们生活的不可或缺的一部分,而了解一部电影的可以通过电影评分与大众推荐度,但以上的方式都太过于片面, ...

  2. Java script生成apk_lua脚本实现自动生成APK包

    可以根据需要自行扩展了. 使用前tool path 还有 target path的前两个还是需要自己设置下. 一些小的函数 jit_file copy_file 我就不贴了 比较简单,用来luajit ...

  3. 计算机名生成,如何让输出的文本名字自动生成计算机名字?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 @echo rem view this computer hard infornation cls ipconfig /all ipconfig /all ...

  4. 随机生成计算机名的批处理命令,如何让输出的文本名字自动生成计算机名字?...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 @echo rem view this computer hard infornation cls ipconfig /all ipconfig /all ...

  5. Python实现输入电影名字自动生成豆瓣评论词云图!

    一.项目背景 电影逐渐成为人们生活的不可或缺的一部分,而了解一部电影的可以通过电影评分与大众推荐度,但以上的方式都太过于片面,了解一部电影的方法是通过已经观看完电影的人群的反馈,虽然电影评分和大众推荐 ...

  6. 【HTML特效程序】① 给女神表白的程序(让女神看科技烟花),输入名字自动生成表白二维码

    目录 一.效果演示视频 二.一步一步创建项目 三.生成表白二维码的小链接 一.效果演示视频 给女神表白的程序 二.一步一步创建项目

  7. Android:手把手教你自定义头像View,可根据名字自动生成背景色+文字的显示效果,含动画效果。

    首先看需要做成的效果,如下所示

  8. 使用RNN神经网络自动生成名字 (不使用深度学习框架,源码)

    本文讲解在不使用深度学习框架的情况下,构建一个基本的RNN神经网络来进行名字自动生成.RNN模型请看下面的三张图片.本文主要讲解数据集以及输入模型的数据格式. 数据集和可执行的源码下载地址:https ...

  9. android 自定义apk名,Android Studio 打包自定义apk文件名

    使用Android Studio打包的时候,我们有时候需要自定义apk的文件名,在此记录一下. 在app的build.gradle中,根节点下使用关键词def声明一个全局变量,用于获取打包的时间,格式 ...

最新文章

  1. ant design pro 加载慢_ant design pro (九)引入外部模块
  2. SpringBoot 中 @RequestBody的正确使用方法
  3. 腾讯视频下载格式_怎么下载腾讯视频
  4. 阐述简称PO,VO,TO,BO,DAO,POJO
  5. LightOJ 1013 LCS+记忆化搜索
  6. 文件服务器的未分页内存
  7. 【codeforces 340B】Maximal Area Quadrilateral
  8. elasticsearch的java搜索语法
  9. 麒麟信安总裁刘文清:携手 openEuler,共推操作系统产业新发展
  10. 5-8 哈利·波特的考试 (25分)
  11. 计算机就业前景调查报告问题,计算机专业就业前景调查报告.docx
  12. 量化策略“高股息率模型”长期有效性的实证
  13. Codeforces Round #536 (Div. 2) E. Lunar New Year and Red Envelopes(DP+muitiset优化)
  14. Vue中图片实现毛玻璃效果
  15. Algorithm:图片隐藏术—基于加密算法实现图像隐术加密
  16. 连续系统的动态规划问题
  17. 为什么越来越多的企业选择云计算?—分析云计算的优势和未来发展趋势
  18. python怎样分析文献综述怎么写_如何撰写一份优秀的文献综述?
  19. QtCharts图形移动和缩放
  20. 【蓝桥杯单片机组第十届决赛】— 客观试题

热门文章

  1. GNU make manual 翻译( 一百一十三)
  2. 手工卸载.Net写的win服务
  3. 【网摘】GTK中文显示解决方案
  4. rails的一些问题
  5. 转:中国学生为什么学不好计算机 谭浩强
  6. 基数排序python实现
  7. C#中一些易混淆概念总结--------数据类型存储位置,方法调用,out和ref参数的使用...
  8. yii2嵌入微信公众号支付
  9. 【Unique Binary Search Trees II】cpp
  10. jsoncpp 不能处理long类型数据