Android中versionName和versionNumber之间的区别

Nov*_*eMe 19 android

不要在versionName和versionNumber有如果一个小的改动是在Android应用程序做出改变还是足以改变只有一个?

两者有什么区别?

use*_*305 38

设置应用版本

要定义应用程序的版本信息,请在应用程序的清单文件中设置属性.有两个属性,您应该始终为它们定义值:

* android:versionCode — An integer value that represents the version of the application
  code, relative to other versions.
Run Code Online (Sandbox Code Playgroud)

该值为整数,以便其他应用程序可以以编程方式对其进行评估,例如检查升级或降级关系.您可以将值设置为所需的任何整数,但是应确保应用程序的每个后续版本都使用更大的值.系统不会强制执行此行为,但通过连续发布增加值是规范性的.

通常,您将释放应用程序的第一个版本,并将versionCode设置为1,然后随每个版本单调增加值,无论该版本是主要还是次要版本.这意味着android:versionCode值不一定与用户可见的应用程序发行版本具有很强的相似性(请参阅下面的android:versionName).应用程序和发布服务不应向用户显示此版本值.

* android:versionName — A string value that represents the release version of the
  application code, as it should be shown to users.
Run Code Online (Sandbox Code Playgroud)

该值是一个字符串,以便您可以将应用程序版本描述为..字符串,或任何其他类型的绝对或相对版本标识符.

与android:versionCode一样,除了使应用程序能够将其显示给用户之外,系统不会将此值用于任何内部目的.发布服务还可以提取android:versionName值以显示给用户.

此链接包含更多信息和以下示例:

AndroidManifest.xml中

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.example.package.name"
      android:versionCode="2"
      android:versionName="1.1">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        ...
    </application>
</manifest>
Run Code Online (Sandbox Code Playgroud)


小智 5

您不需要更改任何内容,但是当您这样做时代码看起来会更好:)

versionName仅用于用户目的,他们可以看到它,并且它需要是一个字符串

versionCode是一个整数,用于确定哪个版本更新。只要它会上涨,一切都会好起来;)

参考链接