CFBundleVersion,标识(发布或未发布)的内部版本号。这是一个单调增加的字符串,包括一个或多个时期分隔的整数。
CFBundleShortVersionStri ng 标识应用程序的发布版本号。该版本的版本号是三个时期分隔的整数组成的字符串。第一个整数代表重大修改的版本,如实现新的功能或重大变化的修订。第二个整数表示的修订,实现较突出的特点。第三个整数代表维护版本。该键的值不同于“CFBundleVersion”标识。
版本号的管理是一个谨慎的事情,希望各位开发者了解其中的意义。
比较小白,更新应用的时候遇到版本号CFBundleShortVersionStri ng命名的错误,导致无法更新,后来看了文档研究下发现是这样,希望给不了解的人以启示;
图片里的 Version 对应的就是CFBundleShortVersionStri ng (发布版本号
如当前上架版本为1.1.0 之后你更新的时候可以改为1.1.1)
Build
对应的是
CFBundleVersion (内部标示,用以记录开发版本的,每次更新的时候都需要比上一次高
如:当前版本是11 下一次就要大于11
比如 12,13 ....10000)
版本号的管理是一个谨慎的事情,希望各位开发者了解其中的意义。
比较小白,更新应用的时候遇到版本号CFBundleShortVersionStri

图片里的 Version 对应的就是CFBundleShortVersionStri
区分BundleVersion和BundleShortVersionString
最近遇到了关于检查更新的版本问题了。
问题出在了Info.Plist配置中的两个字段,BundleVersion和BundleShortVersionString
搞了两年的开发,第一次看到还有另一个字段的版本。
由于版本检测升级的问题,搞得一众人手忙脚乱,一直讨论都没有一个定论。
迅速google后,网络上多数都是对官方文档的复述,还是没有实质的解决。
有一部分人的观点是,BundleVersion的会出现非a.b.c.d的数值,类似于beta等
后来在stack overflow,大致是说苹果的BundleVersion会出现bug。具体是1.02会被识别为1.2,而后在新版本的1.1时,无法正确判断,因为1.1<1.2。
现在的问题是这两个字段到底是有什么作用。
辗转查找,看到下图后基本知道其意识了。
而后在Xcode4中新建工程,看到下面的配置,基本就明白了这两个字段的含义了。
原来我们一直都错了。