转载请注明出处http://blog.csdn.net/y150481863/article/details/41249159,来自【http://blog.csdn.net/y150481863

当我们在刚開始学习ANDROID的时候。可能不会过多的关注这个位于manifest.xml文件里的versionCode和versionName。

可是事实上一个好的版本号控制,对于我们有至关关键的数据。

如今打算写一点基础的东西。突然想到这个知识点,所以就记录下来,作为笔记。有不够详尽或者错误的地方欢迎不吝赐教。

版本号控制对于公布新版本号和开发中的版本号维护有着关键性的作用,版本号控制之所以重要的原因例如以下:

1.用户在安装APP的时候须要知道具体的版本号信息,而且在对已有版本号进行升级的时候。是否能正确安装新版本号都和版本号控制有关。

比方:当手机中安装APP的versionCode=1,升级更新的版本是2(versionCode=2),此时APP能够正常安装更新。

反之,假设手机中当前APP版本是2,升级的或者从其它渠道获取的同一APP的版本为1。此时替换安装就会失败。

这样的情况就是说,同一个APP低版本号是不能直接覆盖安装手机中已存在的高版本号应用(通过版本号号(versionCode)来推断)。

这样就给我们在应用升级维护过程中,提高了软件的可维护性和安全性。

2.对于其它应用想要搜索或者调用指定版本号号和版本号名称的应用来说,有了可靠的保证。

当我们公布在市场上有多个版本号的APP的时候,比方不同版本号相应不同型号的终端。这时我们能够通过版本号控制来找到适合的APP。

3.对于我们自己的版本号更新系统或者第三方的APP市场。也通过版本号号和版本号名称来找到和用户终端设备或者终端应用相匹配的APP展示给用户。对于第三方APP市场来说,这个  版本号更为关键的是,决定对用户下载下来之后的兼容性推断起到一定管控作用。

所以版本号控制不能忽视,我们能够通过有效的版本号控制来管控我们公布到市场的应用,以便得到更好的用户体验。




怎么去设置你的应用的版本号号和版本号名称,以下做一个简单的介绍。
VersionCode -------  依据上面的描写叙述,版本号号(versioncode)是相对照较重要的一个属性。versionCode是一个Integer类型的值。所以大家在设置的时候,不要将versionCode设置的太大,最好不要超过Integer的取值范围(当然一般也是不会超过的),一般大家在公布自己的第一个应用到市场的时候,版本号取值为1(versionCode=1),这也是眼下典型和普遍的做法。
然后,每次公布更新版本号时能够递增versionCode的值。上面描写叙述版本号控制重要性时也描写叙述过,一个新版本号的应用的versionCode不能小于之前旧版本号的versionCode值,否则进行替换更新升级时会出错。系统提示无法安装。当然。这也不是强制的,仅仅是正式公布应用时,建议必须考虑的问题。

VersionName ------ 这是一个值为String类型的属性,一般和VersionCode成对出现。VersionCode是方便程序开发人员执行和维护Application而设置的一个有效的值。

versionName是一个版本号的描写叙述,给用户看的。也是用户放在各个第3方平台上提供给使用者看的一个版本号名,能够说是对VersionCode的解释和描写叙述。一般格式能够为:1.1.2(major.minor.point)的形式。


以下是一个Manifest.xml文件例子:


watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveTE1MDQ4MTg2Mw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">

以上代码表示当前.apk是第二个版本号。通过versionName值1.1能够看出此版本号是在1.0版本号上的一个优化改造版本号,差别和1.0版本号不大。

假设是一个UI风格或者业务逻辑有较大调整的应用,版本号通常会升一个级别,比方应该定义为2.0







ANDROID版本号号和版本号名称的重要性介绍的更多相关文章

  1. aapt命令获取apk具体信息(包名、版本号号、版本号名称、兼容api级别、启动Activity等)

    aapt命令获取apk具体信息(包名.版本号号.版本号名称.兼容api级别.启动Activity等) 第一步:找到aapt 找到sdk的根文件夹,然后找到build-tools文件夹.然后会看到一些b ...

  2. ANDROID版本号和版本名称的重要性介绍

    当我们在刚开始学习ANDROID的时候,可能不会过多的关注这个位于manifest.xml文件中的versionCode和versionName. 但是其实一个好的版本控制,对于我们有至关重要的作用. ...

  3. android获取当前软件版本号号和版本号名称

    <span style="font-size:18px;">/** * 获取本地软件版本号 */ public static int getLocalVersion(C ...

  4. 使用Android Studio 1.3 版本号进行NDK开发

    众所周知Android Studio 1.3 版本号新增了NDK支持,能够非常方便的在上面开发C++或者C代码了,但是预览版功能不是非常完好,须要非常多步骤,另一些奇怪的BUG,整了半天最终能够使用A ...

  5. android studio 更新Gradle版本号方法

    在导入其它项目时,常常因为gradle版本号不一致而导致不能编译 解决方法: 第一步: 按提示点击让它下载.事实上目的并非要它下载.因为这样速度会非常慢.这样做仅仅是为了让它在本地创建相应的文件夹结构 ...

  6. VS 生成 dll、exe 版本号与SVN版本号一致

    1.VS 可自动生成版本号 注释掉以下两行代码 [assembly: AssemblyVersion("1.0.0.0")][assembly: AssemblyFileVersi ...

  7. 好纠结啊,JeeWx商业版本号和开源版本号有什么差别呢?

    好纠结啊,JeeWx商业版本号和开源版本号有什么差别呢? JeeWx开源版本号是一套基础微信开发平台.有基础的微信菜单.素材管理.微信对接等基础功能,适合于开发人员学习研究. JeeWx商业版本号是一 ...

  8. 在VS项目中通过GIT生成版本号作为编译版本号

    上一篇博客写了如何在 .Net 项目使用 SVN 作为版本控制工具时生成与代码对应的组件版本号.虽然在公司一直使用 SVN ,但我却对 GIT 情有独钟(可能要归功于那段捣鼓 ROM 的时光),但少有 ...

  9. RedHat/CentOS发行版本号及内核版本号对照表

    RedHat/CentOS发行版本号及内核版本号对照表 : Redhat 9.0———————————————2.4.20-8RHEL 3 Update 8————————————2.4.21-47R ...

随机推荐

  1. DOTween教程

    参考自DOTween官方文档: DOTween起始上手起来很快,当然前提也是用心看一下哈. > 可以在Unity AssetStore下载得到. 使用方法: 准备: 在导入DOTween后,你需 ...

  2. [置顶] kubernetes--Init Container

    概念 Init Container就是做初始化工作的容器.可以有一个或多个,如果有多个,这些 Init Container 按照定义的顺序依次执行,只有所有的InitContainer 执行完后,主容 ...

  3. SQL Server 系统函数

    一组内置函数,对 SQL Server 中的值.对象和设置执行操作,并返回有关它们的信息.   系统函数 功能 APP_NAME() 返回当前会话的应用程序名称(如果应用程序进行了设置) CASE表达 ...

  4. JDK开发WebService

    java开发web service最简单的方式是用jdk6自带的支持web service的注解功能. 1.编写代码如下: package net.swiftlet; import javax.jws ...

  5. Java中hashcode的理解

    Java中hashcode的理解 原文链接http://blog.csdn.net/chinayuan/article/details/3345559 怎样理解hashCode的作用: 以 java. ...

  6. python 注释xml的元素

    use xml.dom.minidom 注释xml元素和去除xml注释. code is: #!/usr/bin/env python from xml.dom import minidom impo ...

  7. 安装ansj分词器

    项目地址:https://github.com/4onni/elasticsearch-analysis-ansj https://github.com/laigood/elasticsearch-a ...

  8. 2017.4.18 静态代码分析工具sonarqube+sonar-runner的安装配置及使用

    配置成功后的代码分析页面: 可以看到对复杂度.语法使用.重复度等等都做了分析,具体到了每一个方法和每一句代码. 四种使用方式: sonarqube + sonar-runner sonarqube + ...

  9. WAMP设置

    当安装好WAMP后,windows右下角会出现WAMP Server的图标,如图所示! 当中集成了PHP开发的常用功能. Localhost:表示启动浏览器打开本地首页 My Projects:项目文 ...

  10. GROUP BY和HAVING 以及mysql中常用的日期函数

    一.mysql中的GROUP BY和HAVINGGROUP BY常见的是和聚合函数(SUM,MIN,MAX,COUNT)搭配使用. 比如:SELECT category,SUM(money) AS ` ...