CFBundleShortVersionString with 4 period-separated integers

Hi,


When I browse the AppStore, I see the Chrome application with a version composed of 4 period-separated integers (e.g 44.0.2403.67). So I suspect that the Bundle Short Version of Chrome is composed of 4 period-separated integers.


But when I try to submit an application with the same format, XCode shows an alert explaining that the Bundle Short Version should be composed of 3 period-separated integers.


Do you know how it is possible?


Thanks in advance.

Romain

Replies

I have the exact same question.

Snapchat also uses 4 integers, currently being "9.31.1.0" - https://itunes.apple.com/en/app/snapchat/id447188370?mt=8


However, when I use Application Loader to upload my binary, I get: "ERROR ITMS-90060: "This bundle is invalid. The value for key CFBundleShortVersionString '2.6.0.0' in the Info.plist file must be a period-separated list of at most three non-negative integers.""


Can you guys at Apple provide an answer for us? The original question was asked almost 10 months ago...

There are two default fields for versioning. One is the BUNDLE VERSION and the other the SHORT BUNDLE VERSION. For info/details about software versioning strategies, please read this source: https://softwareengineering.stackexchange.com/questions/77206/what-is-your-application-versioning-strategy As stated in the message from error “ERROR ITMS-90060”, the SHORT BUNDLE VERSION should be at most 3 non-negative integers separated by period, which limits you to use 2 periods only. Example: “X.X.X” Now, you can use the BUNDLE VERSION field, like so: “X.X.X.X”. FYI, the version string you see in the App Store on the “What’s New” section of the app page, is not the SHORT BUNDLE VERSION, but instead the BUNDLE VERSION. Hope this helps!

Modify info.plist
<key>CFBundleVersion</key>
<string>1.0.19.7101</string>

Hello, has anyone found a definite way of solving this issue? Due to some circumstances I'd like to release a version with 4 integers, and even though I was able to create the release on the App Store Connect, I get error ITMS-90060 from XCode.

If setting different values for Bundle Version and Short Bundle Version, what is the recommended setting? If I want to release version 2.0.2.3 and set the Bundle version as 2.0.2.3, should the Short bundle version be 2.0.2? What if I have already released version 2.0.2 in the past?

Overall, is it recommended to just avoid using 4 integers in versions? Or on simple terms, is it impossible to use 4 integer versions nowadays?

Thanks in advance for any help.

I read in the XCode Quick Help that the CFBundleShortVersionString is not used anymore except in the finders show information dialog. Thats why it is initialized from build setting MARKETING_VERSION

And CURRENT_PROJECT_VERSION should be a single integer. This one is put into the CFBundleVersion.

This is for macOS, don't know about IOS.