区分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中新建工程,看到下面的配置,基本就明白了这两个字段的含义了。原来我们一直都错了。