CFBundleVersion问题处理

这个问题如果一开始不了解,一旦命名做了,非常的很纠结

下面的链接是查询的最终结果

http://stackoverflow.com/questions/4933093/cfbundleversion-in-the-info-plist-upload-error

下面这个是某人的翻译

问题的主要根源貌似是苹果的版本管理存在一个bug.

以下信息来自stackflow.

1.apple会删除版本中数字先头的0。例如:1.02,实际上会当作1.2来处理。所以从1.02升级到1.1时就会出错。应为1.1<1.02(1.2)

2.apple有时候会很晕糊,会把你当前上传的版本,和你其他的app的版本作比较。这显然相当混乱。

3.apple或许只会用CFBundleVersion的版本来进行比较,Bundle versions string, short这个不要混淆了。

4.忽略

5.你上传的版本号和你在itunes里面看到的版本或许一点联系都没有。你可以任意更改itunes中的版本号来给你的用户看。

   (具体想看上传的app的版本,可以到ITunes Connect > Manage Your Applications > Application X (your application in question) > View Details (bottom left corner) > Binary Details)

6.忽略

-----------------------------------------------------------------------------------------------------------------------------------------------

There's at least 1 known bug in Apple's upload server that they've not fixed for more than 12 months. Things to beware of:
   1. Apple deletes any leading zeroes inside the version number; i.e. it is NOT treated as a number. e.g. "1.02" is treated by Apple as "1.2". So, for Apple, 1.02 is GREATER THAN 1.1
   2. Apple sometimes gets "confused" and seems to compare your uploaded-app to the version of a DIFFERENT app you've previously uploaded. It's happened to a lot of people, and I've seen it myself a few times
   3. Apple is supposed to be comparing the "CFBundleVersion" (i.e. "Bundle version" not the "Bundle versions string, short"); don't get mixed up.
   4. Frequently, the only viable solution is to bump the front number (e.g. the "2" in "2.4" -- increase it to "3")
   5. The version number you upload is unrelated to the version number that appears in iTunes - you can put anything you want there, and that's what your users will see
   6. ...except, if you also report the "actual" version number inside your app, the user will see the CFBundleVersion (usually, depends how you code it), rather than the iTunes version (which - I think - cannot be accessed from inside your app)

你可能感兴趣的:(apple)