实际上,我的应用程序已经接近完成,一些人可以测试它。现在我想要为应用程序添加一个版本号。我应该把版本信息放在 version.properties 文件中吗?还是有内置的机制可以使用?
谢谢。
谢谢。
关于最佳实践,你可以使用一个非常好的方法来管理版本代码和名称,这里有描述:https://web.archive.org/web/20161206025623/https://plus.google.com/+JakeWharton/posts/6f5TcVPRZij (如果你只看到一个空白页面,请使用阅读器视图), 作者是Jake Wharton。
基本上,你可以更新你的 build.gradle 文件,根据你的主要、次要和补丁版本号生成 versionCode 和 versionName。(为方便起见,代码从该链接中复制。)
def versionMajor = 3
def versionMinor = 0
def versionPatch = 0
def versionBuild = 0 // bump for dogfood builds, public betas, etc.
android {
defaultConfig {
...
versionCode versionMajor * 10000 + versionMinor * 1000 + versionPatch * 100 + versionBuild
versionName "${versionMajor}.${versionMinor}.${versionPatch}"
...
}
...
}
参考@GregoryK的答案,有一件重要的事情需要提到。
每个部分之间的0差异允许在次要和修补值中达到最大值9。
(构建被限制在99以内,如果不在CI/CD环境中使用,则没有问题)
数值3.0.10.0和3.1.0.0将产生相同的versionCode,尽管第二个版本明显更大。 最大的问题在于,如果已上传了3.0.10.0,GooglePlay将拒绝接受3.1.0.0,因为版本代码已经存在。
为了解决上述问题,我们需要遵循像构建和修补(修补可以增加到99)一样的两个零空间:
versionMajor * 1000000 + versionMinor * 10000 + versionPatch * 100 + versionBuild
在您的清单文件中应该有以下内容:
android:versionCode="1"
android:versionName="1.0"
defaultConfig {
applicationId "your id"
minSdkVersion 16
targetSdkVersion 25
versionCode 2
versionName "1.0.1"
multiDexEnabled true
}
versionCode 是你的 APK 的下一个发布版本号,其中发布是指将要在 Google Play 上发布的内容。