1、version
CFBundleShortVersionString ("Bundle Version")
,也就是我们看到的version
;这是在AppStore上看到的版本号,就是对外展示的版本号。
该版本的版本号是三个分隔的整数组成的字符串,第一个整数代表重大修改的版本,如实现新的功能或重大变化的修订。第二个整数表示的修订,实现较突出的特点。第三个整数代表维护版本例如:1.0.12或者 1.2.3等等;版本检测更新用到的是version
,而不是Build
。
在普通情况下,我们只使用version
即可,
获取方式
NSDictionary *infoDictionary = [[NSBundle mainBundle] infoDictionary];
// app版本
NSString *app_Version = [infoDictionary objectForKey:@"CFBundleShortVersionString"];
2、Build
CFBundleVersion ("Bundle version string, short")
,也就是我们看到的Build
(别人是看不到的)。
// app build版本
NSString *app_build = [infoDictionary objectForKey:@"CFBundleVersion"];
Build
就是内部版本一般格式:X.X.X.XX;前面三个跟version
相同,最后一个是发布的构建版本号,可为一个或者多个分割的整数。
在iOS开发中,向Apple Developer提交的版本在检查的过程中,若是ipa包出了问题,就需要重新上传包。但是若不改动版本号,在提交二级制文件的时候会提示改版本的包已存在不能重复提交。这个时候若是改动Version版本号,会导致APP版本升高了,这样很不恰当。若是改动build号,可以再次提交该版本而且不会导致APP包的版本变化。
写这篇文章的目的呢是因为最近项目后台接口的请求头需要传版本号,还规定了要整数,然后我是有点懵逼的,不知道他到底需要哪个,刚好就算写个文章总结复习一下,毕竟这些以前好像也都没怎么正经的了解过。
网友评论