Android Studio打包的时候,我们想自定义自己的文件名,则可以使用
applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith('.apk')) { // apk_渠道名-版本号-版本名称-编译时间.apk def fileName = "apk_${variant.productFlavors[0].name}-${defaultConfig.versionCode}-${defaultConfig.versionName}-${releaseTime() }.apk" output.outputFile = new File(outputFile.parent, fileName) } } }其中releaseTime()如下:
def releaseTime() { return new Date().format("yyyyMMdd", TimeZone.getTimeZone("UTC")) }
Sync Now之后,正常打包,打出来的文件名就会是我们想要的了
apk_渠道名-版本号-版本名称-编译时间.apkapply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "24.0.0" defaultConfig { applicationId "app." minSdkVersion 16 targetSdkVersion 22 versionCode 10 // 9 versionName "1.2.4" } sourceSets { main { jniLibs.srcDirs = ['src/main/jniLibs'] } } buildTypes { release { // 混淆 minifyEnabled true // Zipalign优化 zipAlignEnabled true // 移除无用的resource文件 shrinkResources true // 前一部分代表系统默认的android程序的混淆文件,该文件已经包含了基本的混淆声明,后一个文件是自己的定义混淆文件 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith('.apk')) { // apk_渠道名-版本号-版本名称-编译时间.apk def fileName = "apk_${variant.productFlavors[0].name}-${defaultConfig.versionCode}-${defaultConfig.versionName}-${releaseTime() }.apk" output.outputFile = new File(outputFile.parent, fileName) } } } } } productFlavors { qihu360 {} // 360手机助手 yingyongbao {} // 腾讯应用宝 wandoujia {} // 豌豆荚 // baidu {} // 百度手机助手 // miui {} // 小米 // flyme {} // 魅族 // lenovo {} // 联想-乐商店 // oppo {} // Oppo-可可软件商店 // huawei {} // 华为 // vivo {} // vivo // hiapk {} // 安卓市场 // sj91 {} // 91手机助手 // sogou {} // 搜狗手机市场 // sohu {} // 搜狐应用中心 // taobao {} // 淘宝手机助手 // gfan {} // 机锋 // appchina {} // 应用汇 // mumayi {} // 木蚂蚁 // wangyi163 {} // 网易应用 // nduoa {} // N多市场 // mm10086 {} // MM商城-中国移动 // wostore {} // WO商店 // youyi {} // 优异 // uc {} // UC+开发平台 // anzhi {} // 安智市场 // google {} // google play // amazon {} // 亚马逊 } productFlavors.all { flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name] } } def releaseTime() { return new Date().format("yyyyMMdd", TimeZone.getTimeZone("UTC")) }
相关推荐
ELK 企业级日志分析系统(1)
ELK平台是一套完整的日志集中处理解决方案,将、Logstash和Kiabana三个开源工具配合使用, 完成更强大的用户对日志的查询、排序、统计需求。ElasticSearch:是基于Lucene(一个全文检索引擎的架构)开发的分布式存储检索引擎,用来存储各类日志。Elasticsearch 是用 Java 开发的,可通过 RESTful Web 接口,让用户可以通过浏览器与 Elasticsearch 通信。
Android Studio APK打包指定包名
在最近写的一个案列中尝试用最新版的Android studio对项目进行打包测试,想要指定打包的包名这样便于区分的时候发现以前的许多方法都过时了,查了很多资料才弄明白each被抛弃了。本教程建议先看第三步。
AMBA总线—APB总线协议详解
文章目录一、APB总线介绍1.1.什么是APB总线1.2.典型的基于 AMBA 总线的系统架构1.3.APB信号列表(重点)二、APB总线传输(时序)2.1.APB 状态机2.2.写操作(重要)2.3.读操作(重要)2.4.APB组件接口(重要)2.4.1.APB Bridge框图2.4.2.APB Slave框图三、APB到AHB的接口3.1.读操作3.2.写操作3.3.读写交替传送 一、APB...
Android Studio生成APK自动追加版本号、自定义apk名称、指定签名证书文件
参考:http://www.sollyu.com/android-apk-studio-generated-automatically-appends-a-version-number/http://www.th7.cn/Program/Android/201501/380594.shtml?WebShieldDRSessionVerify=SVUnBrv9lvKUzUH4e6nRhttp://bl
泛微Ecology流程数据表结构解析:workflow_requestbase和workflow_currentoperator到底怎么关联查询?
本文深入解析泛微Ecology系统中workflow_requestbase和workflow_currentoperator表的结构与关联机制,提供SQL查询语句示例,帮助开发者高效查询流程数据。涵盖待办事项、已办事项、办结事项和流程监控等典型场景,并分享性能优化技巧和常见问题排查指南。
深入解析AUTOSAR中IIC的MCAL实现与Vector配置实践
本文深入解析AUTOSAR架构中IIC总线的MCAL实现与Vector配置实践,探讨IIC在汽车电子中的特殊定位及Vector的折中方案。通过Channel与Sequence设计模式、Chain特性应用及DaVinci Configurator配置步骤,提供IIC驱动的优化与安全实现方法,助力开发者高效解决车载通信问题。
AndroidStudio修改生成的apk名称
使用 AndrodiStudio 编译生成的apk ,如果没有改动,命令一般为 app-debug.apk 或者 app-release.apk ,多个工程都是这个名称的话,不方便辨认。 AndroidStudio 修改默认生成的 apk 名称,只需要修改 app 的 build.gradle 即可, 在 android{ } 中添加如下: android.applicationVariants.all { variant -> variant.outputs.
用Simulink对Carsim车辆进行档位控制
用Simulink对Carsim车辆进行档位控制一、carsim中的档位设置为开环控制二、在Constant目录下面选取一个选项并重新命名为constant :0 Gear三、双击进去设置常量为 0四、输入和输出IO通道五、验证 :输入 为 3 档 ----- 输出 为 3!六、参考 一、carsim中的档位设置为开环控制 二、在Constant目录下面选取一个选项并重新命名为constant :0 Gear 三、双击进去设置常量为 0 四、输入和输出IO通道 五、验证 :输入 为 3 档 -
Android Studio自定义Apk打包生成的名称
如果没有对生成的apk进行自定义,那么Android studio默认生成的apk的名字一般默认是app-debug.apk,app-release.apk,这样的命名实在是太没有辨识度了。打包好后还需要重新命名,不胜其烦啊! 自定义方法:在build.gradle中添加如下配置即可 android { compileSdkVersion 30 buildToolsVersion "30.0.3" ...... android.applicationVariants.a
【异常】OpenClaw LLM Request Timeout 超时问题的快速定位与落地解决
摘要:OpenClaw系统在执行任务时频繁出现"LLM request timed out"异常。通过分析发现主模型自动调度导致响应延迟,且缺乏超时配置兜底。解决方案包括:1)将主模型切换为低延迟的豆包2.0 Lite;2)保留豆包2.0 Pro和Kimi作为备用;3)重启Gateway服务验证。优化后系统响应速度显著提升,未再出现超时异常。后续建议增加显式超时配置、优化任务拆分和Prompt指令,并建立网络监控机制。(148字)
Python爬虫教程:抓取Android或iOS应用中的数据
随着智能手机的普及,移动应用程序已经成为我们生活中不可或缺的一部分。从社交媒体、在线购物到金融服务和健康管理,几乎所有领域都有相应的手机应用程序(App)服务用户。而这些应用程序通常会存储大量的数据,例如用户行为、产品信息、订单记录等。如果我们能有效地抓取这些数据,可以为数据分析、商业智能、用户行为分析等提供有力支持。本文将重点介绍如何使用Python爬虫技术抓取Android或iOS应用中的数据,尤其是如何从这些应用的后端接口、存储、或网页中提取数据。我们将探讨如何通过反向工程技术访问移动应用中的API接
android 自定义apk名,Android Studio 打包自定义apk文件名
使用Android Studio打包的时候,我们有时候需要自定义apk的文件名,在此记录一下。在app的build.gradle中,根节点下使用关键词def声明一个全局变量,用于获取打包的时间,格式可自定义,如下所示:然后,在android节点中添加以下代码,注意:Gradle 3.0.0之前和3.0.0之后的做法是不一样的!这样设置好了,打包出来的apk文件名就是:t8app_2.0.6_171...
复分析 阿尔福斯(Ahlfors) 第三版答案 英文
答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案
android studio自定义修改应用打包的apk文件的名字
平时开发都知道,我们要上线的时候需要在Android studio打包apk文件,可是默认的打包名是app-release.apk或者app-debug.apk这样的名字。但是产品经理想留下历史版本,所以我们需要自定义apk的名字。 gradle 3.0以下的版本: gradle的版本可以到工程下的build.gradle查看: 我的是 classpath 'com.android.too...
RU DOS版、EFI版32bit/64bit BIOS常用工具
DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。
Statistics and Machine Learning Toolbox
Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具
Android studio自定义打包apk名字
在app下面的build.gradle文件中,添加如下代码即可,如图: studio3.0以前,添加: applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = ou...
VC中sqlite的使用
在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示
Android Studio 自定义打包出来的apk名字
build.gradle中增加以下配置。例如:输出的APK名字是。
Android Studio在打包时自定义apk名字
如题,Android项目在打包的时候自定义apk的名称。 在android的大括号下添加如下代码: applicationVariants.all { variant -> variant.outputs.all { outputFileName = "appName_${defaultConfig.versionName}_${rel...
android多渠道打包定义名字,Android Studio多渠道打包、自定义打包APK名称
现在为了推广产品,会在多个渠道应用市场发布应用,为了统计不同渠道的数据,需要在应用中表明渠道,如果一个一个去修改打包效率会很低。AS为我们提供了简便的方法,可以多渠道打包,一次打包所有的渠道包。1. AS 2.x多渠道打包(1) AndroidManifest中增加节点...android:name="UMENG_CHANNEL"android:value="${UMENG_CHANNEL_VAL...
android 自定义apk名,Android studio自定义打包apk名字
在app下面的build.gradle文件中,添加如下代码即可,如图: studio3.0以前,添加:applicationVariants.all { variant ->variant.outputs.each { output ->def outputFile = output.outputFileif (outputFile != null && outputF...
Android Studio 打包APK
做Android开发肯定对APK不陌生,你现在Android手机上所有的应用都是apk,只不过分为系统自带和第三方。修改app下的build.gradle// 自定义打包名称 android . applicationVariants . all {123456添加位置如下图所示,在android{}闭包中添加后记得Sync一下,然后重新打一个包,这里我将打包的路径修改到了D盘,如下图所示点击Finish完后打包。包的确是生成了,名字也不再是app-release.apk。
android studio 自定义打包(apk)名称
在你的build.gradle中的android{}下加入如下代码 //配置自定义打包名称 applicationVariants.all { variant -> variant.outputs.all { def fileName if (variant.buildType.name.equals('releas...
Android apk文件打包自定义命名
在Android Studio中打包生成的APK和aar文件基本上都是module名称+构建类型,常见的都是和这种样式的。显然没有版本号等序号标识的话,管理起来会比较混乱,基于此种情况,我们可以通过修改文件中的配置来修改生成包的文件名以做区分。
Android Stdio 如何自定义生成APK的名称
Android Stdio自动默认生成的app的名称都是app-release或者app-debug,生成完后还要手动更改apk的名称,很是麻烦。 自定义生成APK的名称的方法:在\app\build.gradle这个文件里添加如下内容 apply plugin: 'com.android.application' def getTime() { r...
android studio 3.0之后版本自定义文件名生成apk文件
修改app模块的build.gradle 在android闭包中添加以下代码 //指定打包后应用名称 android.applicationVariants.all { variant -> variant.outputs.all { outputFileName = "权限申请示例_${defaultConfig.versionNa...
Android Studio 打包APK(详细版)
Android Studio 打包APK前言正文总结 前言 做Android开发肯定对APK不陌生,你现在Android手机上所有的应用都是apk,只不过分为系统自带和第三方。 正文 Android打包APK在开发中是必不可少的一个环节,相信你可能已经会了,或者在别的博客中看到过了,但是其实还有一些细节是你所不知道的。 总结 ...
1864



被折叠的 条评论
为什么被折叠?



