使用应用程序名称、版本和构建类型重命名 Android 应用程序包和 APK(.aab 和 .apk)文件 - build.gradle.kts

问题描述 投票:0回答:1

如何更改 Android 应用程序包/APK 名称 (app.aab/app.apk) 以反映应用程序版本、应用程序名称和构建类型

build.gradle.kts

这里是

build.gradle.kts
,我需要在这里重命名apk/aab

android {
namespace = "com.example.app"
compileSdk = 34

val prop = Properties().apply {
    load(FileInputStream(File(rootProject.rootDir, "keystore.properties")))
}

signingConfigs {
    create("my_sign") {
        storeFile = file(prop.getProperty("storeFile"))
        storePassword = prop.getProperty("storePassword").toString()
        keyPassword = prop.getProperty("keyPassword").toString()
        keyAlias = prop.getProperty("keyAlias").toString()
    }
}

defaultConfig {
    applicationId = "com.example.app"
    minSdk = 24
    targetSdk = 34
    versionCode = 1
    versionName = "1.0.0"

    testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
    vectorDrawables {
        useSupportLibrary = true
    }
    signingConfig = signingConfigs.getByName("my_sign")
}

buildTypes {

    release {
        isMinifyEnabled = true
        isShrinkResources = true
        proguardFiles(
            getDefaultProguardFile("proguard-android-optimize.txt"),
            "proguard-rules.pro"
        )
    }
    debug {
        isMinifyEnabled = false
        isShrinkResources = false
    }
}

如果有任何代码片段、建议、参考资料或链接,我将不胜感激。

android kotlin android-gradle-plugin gradle-kotlin-dsl android-build
1个回答
0
投票

在应用程序 uild.gradle.kts 中添加以下内容

android {
    ...
    // rename the output APK file
    applicationVariants.configureEach {
        outputs.configureEach {
            (this as? ApkVariantOutputImpl)?.outputFileName =
                "${rootProject.name}_${baseName}_${versionName}(${versionCode}).apk"
        }
    }
}

然后,尝试在根项目中执行命令

./gradlew.bat assembleDebug

© www.soinside.com 2019 - 2024. All rights reserved.