kotlin build.gradle.kts下修改APK的输出名称

kotlin build.gradle.kts下修改APK的输出名称

直接贴代码:

kotlin 复制代码
android.applicationVariants.all {
        outputs.all {
            if (this is com.android.build.gradle.internal.api.ApkVariantOutputImpl) {
                val config = project.android.defaultConfig
                val versionName = config.versionName
                val formatter = DateTimeFormatter.ofPattern("yyyyMMdd-HHmm")
                val createTime = LocalDateTime.now().format(formatter)
                val parts = this.name.split("-")
                val flavorName = parts.getOrNull(0) ?: ""
                val buildType = parts.getOrNull(1) ?: ""
                this.outputFileName ="${flavorName}_${buildType}_v${versionName}_${createTime}.apk"
            }
        }
    }

字段解释:

kotlin 复制代码
versionName:版本名称: v1.0.1

this.name:APP的默认名称  oppo-debug

parts:把默认名称分割后的数据 

0位的flavorName是渠道名称:oppo

1位的buildType是版本:debug或者release

createTime:按照yyyyMMdd-HHmm格式的时间 20251112-1638

放在文件中的

kotlin 复制代码
android {
defaultConfig{
}
//放在这个位置
android.applicationVariants.all{
......
}
}

打包后输出的格式为

kotlin 复制代码
oppo_debug_v1.0.1_20251112-1638.apk

以上。

相关推荐
alexhilton3 小时前
藏在设备上的秘密,终究藏不住
android·kotlin·android jetpack
ai2work8 小时前
ch15 加载模型与初始化上下文
kotlin
hai_android8 小时前
Kotlin / Android 常用函数使用示例手册
android·java·kotlin
hai_android10 小时前
Android MeasureSpec 详解
android·java·kotlin
又见情义11 小时前
RK3568 Android 13 本地 U 盘 OTA 升级实战:基于 RKUpdateService 的完整流程
android
Godikov12 小时前
Android10后台弹窗与APK自动更新
android
ai2work13 小时前
ch11 持久化:DataStore + Gson 多会话
kotlin
又见情义13 小时前
RK3568 Android 13 USB OTG/Host 切换调试经验分享
android
终端安全笔记15 小时前
iOS 27 之后「策略空转」:设备升级不报错,但旧策略不再管它
android·网络·安全·ios·智能手机
JMchen15 小时前
实战案例:实现120fps流畅的渐变进度条
android·kotlin·canvas