Version:发布版本号,可以通过App Store、itunes或其它软件看到,是给用户看的,如当前上架版本为1.1.0 之后你更新的时候可以改为1.1.1
对应着:CFBundleShortVersionString 标识应用程序的发布版本号。
该版本的版本号是三个时期分隔的整数组成的字符串。第一个整数代表重大修改的版本,如实现新的功能或重大变化的修订。第二个整数表示的修订,实现较突出的特点。第三个整数代表维护版本。该键的值不同于“CFBundleVersion”标识。
Build: 内部标示,团队开发中内部使用的,只有开发者可以看到,用以记录开发版本的,每次更新的时候都需要比上一次高 如:当前版本是1.1 下一次就要大于1.1 比如 1.2,1.3 ....)
对应着:CFBundleVersion,标识(发布或未发布)的内部版本号,是一个单调增加的字符串,包括一个或多个时期分隔的整数。
build对于开发者:如团队打算发布1.0版本的时候,会发布很多build版本供测试或QA团队进行测试,你发布了很多build,因为一直在修改着代码,因此当你收到一条bug信息时候,你怎么知道是那个build引起的问题呢,这时候build版本号的有点就可以体现出来了
还有就是build的为了方便开发者多次提交binary, 比如被苹果reject后,第一次提交version和build都是1.0,假如审核没过,那么修改代码后新的构建的version还是1.0,build改为1.0.1就ok了
两个的获取方式:
Version :
NSString*key=@"CFBundleShortVersionString";
NSString*currentVersion=[NSStringstringWithFormat:@"V%@",[NSBundlemainBundle].infoDictionary[key]];
Build:
NSString*key=@"CFBundleVersion";
NSString*currentVersion=[NSStringstringWithFormat:@"V%@",[NSBundlemainBundle].infoDictionary[key]];