gpt4 book ai didi

android - 如何使用 gradle 在 APK 文件名中设置 versionName?

转载 作者:IT老高 更新时间:2023-10-28 11:06:22 27 4
gpt4 key购买 nike

我正在尝试在 gradle 自动生成的 APK 文件名中设置特定的版本号。

现在 gradle 生成 myapp-release.apk 但我希望它看起来像 myapp-release-1.0.apk

我尝试重命名看起来很乱的选项。有没有简单的方法来做到这一点?

buildTypes {
release {
signingConfig signingConfigs.release
applicationVariants.each { variant ->
def file = variant.outputFile
variant.outputFile = new File(file.parent, file.name.replace(".apk", "-" + defaultConfig.versionName + ".apk"))
}
}

我尝试了上面的代码,但没有成功。有什么建议么?(使用 gradle 1.6)

最佳答案

我只需在一处更改版本名称。代码也很简单。

以下示例将创建名为 MyCompany-MyAppName-1.4.8-debug.apkMyCompany-MyAppName-1.4.8-release.apk 的 apk 文件,具体取决于在所选的构建变体上。

请注意,此解决方案适用于 APK 和 App Bundles (.aab files)

另请参阅:How to change the proguard mapping file name in gradle for Android project

#最近 Gradle 插件的解决方案

android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.company.app"
minSdkVersion 13
targetSdkVersion 21
versionCode 14 // increment with every release
versionName '1.4.8' // change with every release
setProperty("archivesBaseName", "MyCompany-MyAppName-$versionName")
}
}

上述解决方案已使用以下 Android Gradle 插件版本进行了测试:

  • 3.6.4(2020 年 8 月)
  • 3.5.2(2019 年 11 月)
  • 3.3.0(2019 年 1 月)
  • 3.1.0(2018 年 3 月)
  • 3.0.1(2017 年 11 月)
  • 3.0.0(2017 年 10 月)
  • 2.3.2(2017 年 5 月)
  • 2.3.1(2017 年 4 月)
  • 2.3.0(2017 年 2 月)
  • 2.2.3(2016 年 12 月)
  • 2.2.2
  • 2.2.0(2016 年 9 月)
  • 2.1.3(2016 年 8 月)
  • 2.1.2
  • 2.0.0(2016 年 4 月)
  • 1.5.0 (2015/11/12)
  • 1.4.0-beta6 (2015/10/05)
  • 1.3.1 (2015/08/11)

我会在新版本出来时更新这篇文章。

#Solution 仅在 1.1.3-1.3.0 版本上测试以下解决方案已使用以下 Android Gradle 插件版本进行测试:

  • 1.3.0 (2015/07/30) - 不工作,bug scheduled to be fixed in 1.3.1
  • 1.2.3 (2015/07/21)
  • 1.2.2 (2015/04/28)
  • 1.2.1 (2015/04/27)
  • 1.2.0 (2015/04/26)
  • 1.2.0-beta1 (2015/03/25)
  • 1.1.3 (2015/03/06)

应用 gradle 文件:

apply plugin: 'com.android.application'

android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.company.app"
minSdkVersion 13
targetSdkVersion 21
versionCode 14 // increment with every release
versionName '1.4.8' // change with every release
archivesBaseName = "MyCompany-MyAppName-$versionName"
}
}

关于android - 如何使用 gradle 在 APK 文件名中设置 versionName?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18332474/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com