CFBundleVersion in the Info.plist Upload Error
"The binary you uploaded was invalid. The key CFBundleVersion in the Info.plist file must contain a higher version than that of the previously uploaded version."
I’m getting this error when I come to upload my application.
I set the updated version to 1.2 on iTunes Connect and have also updated the .plist
file to 1.2.
I don’t understand why I am getting this error. Any help would be appreciated. Thanks.
Solution 1:
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)
Solution 2:
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.
Solution 3:
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!