android 自定义 打包文件类型,Android Studio配置打包生成自定义文件名
https://blog.csdn.net/and_you_with_me/article/details/78799226
## 举例
~~~
apply plugin: 'com.android.application'
// 当前beta版本号
ext.build_number = "beta1";
// 显示的时间格式,形如20171110
def releaseTime() {
return new Date().format("yyyyMMdd", TimeZone.getDefault());
}
android {
useLibrary 'org.apache.http.legacy'
compileSdkVersion 25
buildToolsVersion "27.0.3"
defaultConfig {
applicationId "com.jinnong"
minSdkVersion 14
targetSdkVersion 25
versionCode 6
versionName "1.0.6"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
}
applicationVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.apk')) {
// 显示app名称+当前版本号
def fileName = "TouchH-V${variant.versionName}"
// 如果有渠道,显示渠道名""
if (variant.flavorName!=""){
fileName = fileName + "-${variant.flavorName}"
}
// 加入打包时间
fileName = fileName + "-${releaseTime()}"
// 如果是debug版本,加入beta版本号
if ('debug'.equals(variant.buildType.name)) {
fileName = fileName + "-${build_number}.apk"
} else {
// 如果是release版本,直接显示
fileName = fileName + "-release.apk"
}
output.outputFile = new File(outputFile.parent, fileName)
}
}
}
signingConfigs {
release {
keyAlias 'jnkey'
keyPassword '123456'
storeFile file('C:/Users/Administrator/Desktop/jnkey.jks')
storePassword '123456'
}
}
buildTypes {
release {
//Zipalign优化
zipAlignEnabled true
// 移除无用的resource文件
shrinkResources false
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
splits {
abi {
enable true
reset()
include 'armeabi-v7a'
}
}
packagingOptions {
exclude 'META-INF/rxjava.properties'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/notice.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/dependencies.txt'
exclude 'META-INF/LGPL2.1'
exclude 'META-INF/maven.com.squareup.retrofit2.converter-gson/pom.xml'
}
repositories {
flatDir {
dirs 'libs'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:design:25.3.1'
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
//compile files('libs/BaiduLBS_Android.jar')
compile files('libs/gson-2.2.4.jar')
compile files('libs/universal-image-loader-1.9.5.jar')
compile 'com.jakewharton:butterknife:7.0.1'
compile 'com.wang.avi:library:2.1.3'
compile 'org.apache.httpcomponents:httpcore:4.4.2'
compile(name: 'AliyunPlayer', ext: 'aar')
compile 'com.android.support:multidex:1.0.1'
compile 'com.tencent.bugly:crashreport:latest.release'
}
~~~
android 自定义 打包文件类型,Android Studio配置打包生成自定义文件名相关推荐
- android 自定义 打包文件类型,Android设置apk打包文件名报错
前言 在 app_module对应的build.gradle中给apk设置打包后的名称时报错了,下面就来讲讲这个问题. 今天涉及知识点: 问题点 解析 更多精彩内容,请关注微信公众号 "An ...
- android新建txt文件类型,Android开发:新建后缀为txt的文件并且使用的步骤
前段时间在开发Android应用的时候,APP里面在进行用户注册的时候用到了地区选择,然后涉及到了全球地区的地区信息,需要在程序里面先行存放全球各个地区的信息,这就需要在项目里面新建一个txt文件进行 ...
- android设置过滤文件类型,Android之Intent筛选多种类型文件
在项目中,经常遇到需要选择指定类型的文件. 指定一种类型的文件 我们一般是使用setType来实现过滤 例如,只显示pdf文件 int requestCode = 100; Intent intent ...
- android media的文件类型,NOMEDIA 文件扩展名: 它是什么以及如何打开它?
NOMEDIA 文件疑难解答 打开 NOMEDIA 文件的麻烦 StudioKUMA .nomedia Manager 不存在 双击你的 NOMEDIA 文件会提示消息 "%%os%% 无法 ...
- 手机如何打开c语言文件类型,Android中如何使用代码打开各种类型的文件
介绍 本篇用于介绍Android中如何打开各种类型的文件,如:音乐文件(mp3.wav.ogg等).视频文件(3gp.mp4等).图片文件(jpg.png.gif等).安装包(apk).文档(txt. ...
- android 7 创建文件夹,Android 在 res/layout 文件夹 下创建一个 子文件夹实例
Android 资源文件夹 Layout 文件夹 Layout 文件是存放Android的布局文件的资源文件夹,但是如果你想要在里面创建子文件夹,你会发现xml文件报错. 如何在Layout文件夹下方 ...
- android导出excel文件名称,android 导出数据到excel表格文件
这是一个导出 excel表格的功能 从创建数据库 到导出表格到文件管理 package com.ldm.familybill; import java.io.File; import java.tex ...
- Android创建无用文件,在Android中清理不必要的废料-空文件夹和无用的文件
从Android清除不必要的碎片 本教程是什么(在android中清除不必要的废料)? 在android清洁教程中,我们解释了如何查找/删除,不再需要的文件(因为它们已由已卸载的应用程序留下)以及空文 ...
- android:inputtype有哪些类型,android:inputType参数类型说明
android:inputType="none"--输入普通字符 android:inputType="text"--输入普通字符 android:inputT ...
最新文章
- 卷积神经网络中十大拍案叫绝的操作
- 各种测序基础知识汇总
- 好程序员HTML5前端教程-css的引入方式和选择器
- OpenCV实战【2】HOG+SVM实现行人检测
- linux查看当前igb的版本信息,Linux下查看网卡驱动和版本信息
- 外卖和快递行业数据_外卖和快递骑手管理“上轨道”
- 亚马逊靠“新闻稿”推动创新,跃居市值第一
- 使用元组交换两个数据
- Acrobat Pro DC 教程,如何共享 PDF 文件以供审阅?
- cygwin+hadoop+eclipse (三) 运行wordcount实例
- aceadmin源码
- 匈牙利算法python实现
- ISCSI,FC,FCoE 存储rescan 连接的方法
- 我国的离婚率现状,通过数据的可视化展示,来直观的展现给大家
- glusterfs:Server-quorum和Client Quorum
- tp5 给图片加水印
- 搭建内网yum源镜像仓库
- 原型软件 (Prototype Development)开发指南
- 基于搜狗接口的微信公众号及其信息爬取
- 嵌入式学习之STM32实现OLED
热门文章
- hadoop学习日志
- 一句代码实现批量数据绑定[下篇]
- react-state状态
- JavaScript算法(实例六)输出日期 / 数组合并 / 小球下落--反弹运动
- 数字滤波器(六)--设计FIR滤波器
- LibLinear(SVM包)使用说明之(二)MATLAB接口
- 杜绝0.1 + 0.2 =0.30000000000000004
- 取到小数后三位_小数名师工作室 数学实验 || 一个小数乘10、100、1000……的计算规律...
- 4008-基于邻接矩阵的新边的增加(C++,附思路)
- 为类添加方法java_Java 7 : 为接口类增加“public defender 方法”