我的应用在android市场上的版本代码为2,版本名称为1.1

但是,今天更新的时候,我在manifest里把版本码改成了3,但是错误的把我的版本名改成了1.0.1,并把apk上传到了市场。

现在,我的应用程序的用户会在他们的手机上收到更新通知吗?还是我要重做一遍?


当前回答

我将给你我对我所能找到的关于这个主题的唯一文件的解释。

“例如检查升级或降级关系。”<-您可以降级应用程序。

你应该确保应用程序的每个后续版本都使用更大的值。系统不会强制执行此行为”<-数值应该增加,但您仍然可以降级应用程序。

android:versionCode — An integer value that represents the version of the application code, relative to other versions. The value is an integer so that other applications can programmatically evaluate it, for example to check an upgrade or downgrade relationship. You can set the value to any integer you want, however you should make sure that each successive release of your application uses a greater value. The system does not enforce this behavior, but increasing the value with successive releases is normative. Typically, you would release the first version of your application with versionCode set to 1, then monotonically increase the value with each release, regardless whether the release constitutes a major or minor release. This means that the android:versionCode value does not necessarily have a strong resemblance to the application release version that is visible to the user (see android:versionName, below). Applications and publishing services should not display this version value to users.

其他回答

它确实基于versionCode而不是versionName。然而,我注意到,改变AndroidManifest.xml中的versionCode对于Android Studio - Gradle构建系统是不够的。我需要在build.gradle中更改它。

版本代码被谷歌播放商店用于新的更新。版本名显示给用户。 如果您增加了版本代码,则更新将对所有用户可见。

要了解更详细的信息,请花2分钟阅读这篇文章https://developer.android.com/studio/publish/versioning.html

The answer from Tanoh could use some clarification. VersionCode is the equivalent of a build number. So typically an app will go through many iterations before release. Some of these iterations may make it to the Google Play store in the form of alpha, beta, and actual releases. Each successive iteration must have an incremented versionCode. However, typically you only increase the versionName when between public releases. Both numbers are significant. Your users need to know if the version they have on their phone is the latest or not (versionName) and the Play Store and CI systems such as bitrise rely on and/or update the build number (versionCode)

版本码——这是一个正整数,用于与其他版本码进行比较。它不会显示给用户,只是在某种程度上用于记录。您可以将它设置为您喜欢的任何整数,但建议您在后续版本中线性递增它。

版本名——这是用户看到的版本字符串。它不用于内部比较或其他用途,只是供用户查看。

例如:假设你发布了一个应用,它的初始versionCode可以是1,versionName也可以是1。一旦你对应用程序做了一些小的改变,想要发布一个更新,你可以将versionName设置为“1.1”(因为变化不是很大),而从逻辑上讲,你的versionCode应该是2(不管改变的大小)。

假设在另一种情况下,你发布了一个完全改版的应用程序,你可以将versionCode和versionName设置为“2”。

希望这能有所帮助。

你可以在这里阅读更多信息

给定一个版本号MAJOR.MINOR。PATCH,增加:


当你进行不兼容的API更改时,MAJOR版本 以向后兼容的方式添加功能时为MINOR版本 当您进行向后兼容的错误修复时,PATCH版本。

版本代码和版本名称

如你所知,在android上,你必须为应用程序定义两个版本字段:版本代码(android:versionCode)和版本名称(android:versionName)。版本代码是一个增量整数值,表示应用程序代码的版本。版本名是一个字符串值,表示显示给用户的“友好”版本名。