首页 > 代码库 > 浅谈IOS版本号

浅谈IOS版本号

Version,通常说的版本号,是应用向用户宣传说明时候用到的标识。一般有2段式或者3段式,例如:2.1,8.1.2

Version一般由产品部门确定,完全迥异的更新需要改变主版本号,比如QQ4.0的变化非常大,主版本的变化会更加吸引用户的眼球,所以有的应用会频繁的更新主版本号,比如FireFox 20.0。两段式的副版本号既包含小功能更新也会包含Bug修复等,三段式副版本基本都是新功能添加和大问题修复,第三段则表示稳定版本基本都是修复Bug。

Build,编译号指一次唯一编译标识,通常是一个递增整数(安卓强制为数字,IOS可以是字符串)

Build都是给内部使用的,用来确定一个唯一版本。与前面提到的Version不会有太大的联系。

IOS开发中,这2个号码都是可以任意数字或字符串。

我们目前遇到的情况有:

1、忽略了Version或Build.

2、颠倒了Version和Build.

技术分享

获取方法也很简单:

   NSDictionary *info = [[NSBundle mainBundle] infoDictionary];    //Version    NSString *appVersion = [info objectForKey:@"CFBundleShortVersionString"];    //Build    NSString *buildVersion = [info objectForKey:@"CFBundleVersion"];

为什么使用版本号

1. 方便标示和沟通

前面提到 版本号更新会给推广产生一定的积极作用. 所以版本号不要太长, 如果像这样 "我们隆重推出了 某某某 1.7.14.19257 !", 这个会让用户感觉很乏味很像电视购物,而且也不利于传播. 如果是 "某某 3.0, 大有不同 !"可能就会产生更好的沟通效果.

2. 方便追踪 Bug

一个应用有 Bug 是肯定的, 但是很快的定位解决问题却体现出团队和程序员的能力. 我们经常遇到有开发者说我提交一个版本, 但是下载下来有还是旧的. 我们帮他解决问题的时候,他自己都搞不清哪个是哪个了, 如果能在"关于"之类的地方显示当前的版本, 就会容易找到问题.

或者是测试团队的同事, 可能手里同时有几个不同分支的版本在测试, 他们需要精确的描述一个测试版本.

自动改变 Build 号

前面提到, Version 是不需要自动变化的, 根据产品或者市场部门的需求,适时的手动改一下就好

浅谈IOS版本号