关于Version和Build,网上很多说法,看过之后感觉也是仁者见仁智者见智的事情,总结一下觉得有道理的几点。
1 .version(CFBundleShortVersionString)是显示对外的版本号,(iTunes Connect 和Appstore用户可以看到)。
[[[NSBundle mainBundle] infoDictionary] valueForKey:@"CFBundleShortVersionString"];
- version是三个分隔的整数组成的字符串。第一个整数代表重大修改的版本,如实现新的功能或重大变化的修订。第二个整数表示的修订,实现较突出的特点。第三个整数代表维护版本例如:1.0.12或者 1.2.3等等。
2 .build(CFBundleVersion)别人看不到,只有开发者自己才能看到,相当于内部版本号。
[[[NSBundle mainBundle] infoDictionary] valueForKey:@"CFBundleVersion"];
- build是为了方便开发者多次提交binary, 比如被苹果reject后。
- 例如,第一次提交version和build都是1.0.0,假如审核没过,那么修改代码后新的构建的version还是1.0.0,build改为1.0.0.1就ok了。
- 更新版本的时候,也要高于之前的build号。