Gradle-自定义生成的apk或aar名称

Gradle-自定义生成的apk或aar名称

我们平时用Android Studio打包时候,如果不加规则限制,打包出来的名称都是

  • app-debug.apk
  • app-release.apk
  • app.aab

那么怎么让我们打包的时候更有观赏性,让名称一目了然呢?

解决方法

一般我们都是在build.gradle里面添加配置,目前有两种方法:

方法一

android{
  applicationVariants.all { variant ->
        variant.outputs.all {
            def df = new SimpleDateFormat("MMdd")
            outputFileName = "xxx_${df.format(new Date())}_v${defaultConfig.versionName}_${variant.name}.apk"
        }
    }
}

输出结果

xxx_0526_v1.0.0_release.apk

需要注意的是这个设置只对apk有效,对于app bundle,也就是谷歌马上要强制推行的aab文件是无效的。

需要使用下一个方案。

方法二

设置archivesBaseName, archivesBaseName的话,只是最终输出文件的基本名,不含文件后缀,所以,可以对任何输出结果都有效。

示例:

android {
  ...
  defaultConfig {
    ...
    setProperty("archivesBaseName", "${applicationId}-v${versionName}(${versionCode})")
  }
}

输出结果:

com.example.sampleproject-v1.0.0(101)-release.apk
或者
com.example.sampleproject-v1.0.0(101).aab

如果想要把git提交的commit号也添加到输出文件里,可以用以下设置:

def gitCommit = "git rev-parse --short HEAD".execute().text.trim()

archivesBaseName = "${defaultConfig.applicationId}-${defaultConfig.versionName}v${defaultConfig.versionCode}-${gitCommit}"

println 'outputFileName: after = ' + archivesBaseName

参考链接:

Android 如何让打包出来的apk或者aab文件名更有规律?



如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
posted @   夜行过客  阅读(1445)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
历史上的今天:
2020-09-21 RecyclerView: (转) 仿iOS的分组吸顶效果
2018-09-21 View:Android View的scrollTo(),scrollBy(),getScrollX(), getScrollY()的理解
点击右上角即可分享
微信分享提示