Android开发之versionName和versionCode的命名规则小说

2016-08-29 15:45 评论 0 条

摘要

需要更正一个概念,开发人员和用户所说的APP版本号是两种不同概念,一个Android应用程序中或其他应用程序都有着一个versionCodeversionName。Android应用程序中的versionCode:对用户不可见,仅用于应用程序内部版本识别和版本升级;versionName:正确的叫法应该是版本名称,即用户所说的“版本号”,对用户是可见的,方便用户识别和判断新旧版本。以后再说APP“版本号”多少,指的是APP的versionName,更新APP版本需要注意几个问题:1、如何命名versionCode和versionName?2、如何命名更新后的versionCode和versionName?3、更新versionCode,未更新versionName会怎么样?4、更新了一个带bug的版本如何撤销?5、发布了一个写错的versionCode和versionName咋办?

一、如何命名versionCode和versionName?

Android应用程序的versionCode、versionName定义在AndroidManifest.xml文件里面,打包签名后的apk文件高版本APP会覆盖低版本的APP,安装成功;反之低版本APP无法覆盖高版本APP,提示安装失败;这里所说的高低版本指的是versionCode的值,versionCode是一个整型参数,versionName是一个字符串参数,应用程序的版本更新和版本识别就是通过versionCode的值判断的,所以versionCode的命名必须是一个增长的曲线,版本只能升,不能降。发布的第一个测试版,versionCode命名为1,发布的第一个正式版,versionCode命名为2;versionName的命令规则:主版本号.次版本号.修订版本号,发布的第一个测试版,versionName命名为1.0,发布的第一个正式版,versionName也命名为1.0。

主版本号:功能模块有大的变动,比如增加多个模块或者整体架构发生变化。

次版本号:和主版本相对而言,次版本号的升级对应的只是局部的变动。但该局部的变动造成了程序和以前版本不能兼容,或者对该程序以前的协作关系产生了破坏,或者是功能上有大的改进或增强。

修订版本号:局部的变动,主要是局部函数的功能改进,或者bug的修正,或者功能的扩充。

二、如何命名更新后的versionCode和versionName?

重命名versionCode、versionName来标识APP的更新情况,更新后的应用程序,versionCode在原有的基础+1,versionName根据修改的情况确定,比如:1.0.1或1.1.0。修改versionCode上架到第三方应用市场后,手机上的应用市场软件检测versionCode大小,已安装APP的versionCode大小应用市场上架的APP,应用市场提示用户更新,否则不提示。如果是自己开发的自动更新功能,每次启动应用程序的时候,检测推送版本的versionCode是否大于当前版本,提示更新,对比新旧版本的versionCode,不建议对比versionName。versionCode值大的APP可以覆盖versionCode值低的APP,安卓手机系统只识别versionCode,versionName方便用户记录版本的信息。

三、更新versionCode,未更新versionName会怎么样?

甲方要求乙方修复启动应用程序的bug,调整Android Project部分代码后,重新打包一个版本发布,修改了versionCode,未修改versionName,第三方的应用市场上架后,旧版本的APP收到应用市场推送更新的提示,看到提示后用户会有点蒙了,比如:当前版本1.1.2,修改versionCode后的版本也是1.1.2,用户就分不清楚为啥versionName一样的两个版本提示更新操作?这可能会误导用户,最好的解决办法,发布任何一个新版本时,修改versionCode的同时别忘了修改versionName,保持versionCode和versionName同时增长。

四、更新了一个带bug的版本如何撤销?

在第三方的应用市场发布了一个存在bug的应用程序,同时部分用户已经更新了该版本,如果仅仅撤销新版本下载安装,回滚到是一个版本无法解决根本问题,已安装的用户因为bug使用不了。这个时候,软件开发工程师需要立即解决bug问题,然后同时更新versionCode和versionName,发布一个更高版本的APP,那么已安装的或未安装的用户都提示安装新版本,安装了bug版本的用户必须更新到修复版本才可以使用,这是发布一个bug版本的一些建议。

五、发布了一个写错的versionCode和versionName咋办?

程序员修改versionName的时候,不小心将versionName的值1.1.21的versionCode写成了1121,更新下一个版本versionName的值1.1.3的versionCode写成113,发现更新的版本113无法成功安装,覆盖旧版本失败。这个时候只能够将113改成大于1121的值,重新打包发布,保证已安装和未安装的用户都可以成功安装更新版本。建议写好一个版本控制的文档,使用记事本记录所有更新的版本号和版本名称,以及即将使用的版本号和版本名称,保证versionCode和versionName准确无误,通常测试版本的versionCode写成奇数字,比如:1,表示测试版本;发布版本写成偶数字,比如:2,表示发布版本,versionName有三部分组成:主版本号、次版本号和修订版编号。主版本号改动比较少除非APP功能模块有较大变动,次版本号在APP局部功能改动的情况下变动,比如:调整主界面布局,通常修改更多的是修订版本号,比如:修改bug或增加每个功能。

当前文章价值1.58元,扫一扫支付后添加微信提供帮助!(如不能解决您的问题,可以申请退款)

你可能感兴趣的文章

来源:每日教程每日一例,深入学习实用技术教程,关注公众号TeachCourse
转载请注明出处: https://www.teachcourse.cn/2021.html ,谢谢支持!

资源分享

分类:Android 标签:, ,
Android开发之深入理解Builder设计模式 Android开发之深入理解Builder
Eclipse手动安装SVN插件操作 Eclipse手动安装SVN插件操作
浅谈DMS 浅谈DMS
Android系统搜索框架实战:提示最近查询内容 Android系统搜索框架实战:提示

发表评论

呲牙 憨笑 坏笑 偷笑 色 微笑 抓狂 睡觉 酷 流汗 鼓掌 大哭 可怜 疑问 晕 惊讶 得意 尴尬 发怒 奋斗 衰 骷髅 啤酒 吃饭 礼物 强 弱 握手 OK NO 勾引 拳头 差劲 爱你

表情