CFBundleVersion in the Info.plist Upload Error
Update the build number. The version number is important, but the build number makes all the difference. For example I had my initial version of an app as:
version #: 1.0
build #: 1.0
However when I tried to upload the next version, i.e.
version #: 1.1
build #: 1.0
It wouldn't accept the upload. By simply incrementing the build # to 1.1 the upload was accepted.
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:
- Apple deletes any leading zeroes inside the version number; i.e. the "whole string" is NOT treated as a number, instead the bits between dots are treated as SEPARATE numbers. e.g. "1.02" is treated by Apple as "1.2". So, for Apple, 1.02 is GREATER THAN 1.1
- 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
- Apple is supposed to be comparing the "CFBundleVersion" (i.e. "Bundle version" not the "Bundle versions string, short"); don't get mixed up.
- Frequently, the only viable solution is to bump the front number (e.g. the "2" in "2.4" -- increase it to "3")
- 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
- ...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)
Many of the answers here ultimately helped me but it wasn't until what I saw the exact "version" number that Apple was comparing.
- Go to iTunes Connect -> Manage Your Applications
- Choose the application you want to check the previous version for
- Click on the blue button labeled View Details
- Click the link labeled Binary Details
- Find the value given for Bundle Version
Even though I thought I had submitted version number 1.0.1, the actual number that Apple stored was 101. Some of the comments above made me believe I needed to change my version to 2.0 (20) or 1.5 (15) or 1.2 (12)—these are all less than 101 as you can see. Updating my version number 102 (without the dots) fixed the issue.
Xcode 4 will think you want to re-upload the same version if you do not re-archive the application. Even if you change the Bundle Version and rebuild, the upload will fail. Remember to do a "Archive" in the Product menu!