flutter配置Android gradle kts 8.0 的打包名称

https://blog.csdn.net/zxj2589/article/details/139480782

头部导包

Kotlin 复制代码
import java.text.SimpleDateFormat
import java.util.Locale
import java.util.Date
复制代码
android {} 里面加
Kotlin 复制代码
android.buildTypes.forEach {
            buildType ->
        // 拿到对应的任务类型名称,比如是release或debug,后面需要用它去拼接成对应的任务名称
        val typeName = buildType.name
        // 获取版本号versionName写到apk的民称中
        val versionName = android.defaultConfig.versionName
        // 往apk的名称中加入时间
        val date = SimpleDateFormat("yyyy-MM-dd-HH-mm", Locale.US).format(Date())
        // 按名称遍历productFlavors然后创建两个任务分别打release包和debug包
        android.productFlavors.map { it.name }
            .ifEmpty { listOf("") }
            .forEach {
                    flavorName->
                // 将获取到的名称首字母变为大写,比如:release变为Release
                val combineName = "${flavorName.capitalize()}${typeName.capitalize()}"
                // 为我们的任务命名:比如叫packRelease
                val taskName = "pack$combineName"
                // 找到打包的任务,比如release就是assembleRelease任务
                val originName = "assemble$combineName"
                // 创建一个任务专门做我们的自定义打包任务
                project.task(taskName){
                    // 为任务分组
                    group = "Pack apk"
                    // 执行我们的任务之前会先执行的任务,比如,打release包时会先执行assembleRelease任务
                    dependsOn(originName)
                    // 执行完任务后,我们将得到的APK 重命名并输出到根目录下的apks文件夹下
                    doLast{
                        copy{
                            from(File(project.buildDir,"outputs/apk/$typeName"))
                            into(File(rootDir,"apks"))
                            rename{"AppPackDemo-V-$versionName-$date.apk"}
                            include("*.apk")
                        }
                    }
                }
            }
    }
相关推荐
liulian09162 小时前
Flutter for OpenHarmony 跨平台开发:BMI计算器功能实战指南
flutter·华为
随遇丿而安2 小时前
第2周:`EditText` 不只是输入框,它是 Android 输入体验的第一道门
android
我命由我123452 小时前
Kotlin 开发 - lateinit 关键字
android·java·开发语言·kotlin·android studio·android-studio·android runtime
一起搞IT吧2 小时前
Android性能系列专题理论之十:systrace/perfetto相关指标知识点细节含义总结
android·嵌入式硬件·智能手机·性能优化
xmdy58665 小时前
Flutter+开源鸿蒙实战|智安盾电商溯源平台Day1 项目搭建与整体方案拆解
flutter·开源·harmonyos
小书房7 小时前
Kotlin的by
android·开发语言·kotlin·委托·by
jinanwuhuaguo7 小时前
(第二十八篇)OpenClaw成本与感知的奇点——从“Token封建制”到“全民养虾”的本体论地基
android·人工智能·kotlin·拓扑学·openclaw
xxjj998a8 小时前
Laravel4.x核心特性全解析
android·mysql·laravel
JoshRen8 小时前
2026教程:在Android Termux中集成Gemini 3镜像站实现移动端文档自动处理与摘要生成(附国内免费方案)
android
诸神黄昏EX9 小时前
Android Google KEY
android