将版本从 MAJOR.MINOR 更改为 MAJOR.MINOR.PATCH

Changing version from MAJOR.MINOR to MAJOR.MINOR.PATCH

我在 Playstore 上有一个 android 应用程序,目前我们使用的是 MAJOR.MINOR(例如 2.1)版本格式。 我想将其更改为 MAJOR.MINOR.PATCH 格式。我怎么做?任何特定的程序或只是将 PATCH 版本添加到下一版本的版本代码中(例如 2.1.1)。请提出建议。

您只需添加新版本名称即可。

该版本名称完全取决于您,并且在内部没有任何用途,除了为用户和开发人员提供可读的文本字符串。

在内部,重要的是版本代码,因此您可以随意重命名版本名称而无需担心。

在您的应用级别 build.gradle 中,versionName 属性 是一个字符串,可以按照您喜欢的任何格式定义,例如:

  • 主要次要例如2.1
  • 主要的次要补丁,例如2.1.1
  • 主要次要补丁 + commitHash 例如2.1.1+a2b3c4d5
  • Semantic Versioning
  • 中定义的任何其他格式

但是,versionCode必须是一个整数,并且必须大于之前的版本。我个人通过将每个部分乘以一个因子来确定我的版本代码:

  • 主要 x 10,000
  • 次要 x 100
  • 补丁 x 1

所以 2.1.1 的 versionName 将具有 20101 的 versionCode。这允许 100 个补丁和 100 个小增量,从 0 开始。

除了Michael响应,你还可以这样实现。

Within your app-level build.gradle, the versionName property is a String and can be defined in any format you like, for example:

  • Major minor e.g. 2.1
  • Major minor patch e.g. 2.1.1
  • Major minor patch + commitHash e.g. 2.1.1+a2b3c4d5
  • Or any other format as defined in Semantic Versioning

The versionCode, however, must remain an integer which must be greater than the previous version. Personally I determine my version codes by multiplying each part by a factor:

  • Major x 10,000
  • Minor x 100
  • Patch x 1

So a versionName of 2.1.1 would have a versionCode of 20101. This allows for 100 patches and 100 minor increments, starting from 0.

build.gradle中定义3个变量并像这样使用:

defaultConfig {
    ...

    def majorVersion = 2
    def minorVersion = 1
    def patchVersion = 1

    versionCode majorVersion * 10000 + minorVersion * 100 + patchVersion
    versionName "${majorVersion}.${minorVersion}.${patchVersion}"

    ...
}