Mismatch between previous and updated bundle versions - ios

Each time I attempt to publish an update to an app I receive this automated email response moments later:
We have discovered one or more issues with your recent delivery for "App Name".
Your delivery was successful, but you may wish to correct the following issues in your next delivery:
Version Mismatch - Neither CFBundleVersion ['9.1'] nor CFBundleShortVersionString ['9.1'] in the Info.plist match the version of the app set in iTunes Connect ['2.41'].
I understand why the message is being generated but I would like to resolve the issue without having to compromise the version # by making it higher than it actually is.
Being the first app I had ever developed, I was pretty clueless when it came time to publish the app and in frustration of the process I mistakenly defined the version number to some extreme value because I was, at the time, getting stuck with another error that was preventing me from completely the process .. the other error which I've since forgotten exactly, was related to the version number being incorrect. So I finally thru my hands in the air, set the version number to 8 and was able to complete the process.
Since then, I'm still pretty clueless but I've learned a thing or two, and the current version of the app is 2.41. When I prepare an update on iTunes Connect I set the version to 2.41. But if I define 2.41 in CFBundleVersion or CFBundleShortVersionString, Xcode outright refuses to upload the binary and demands a version greater than the previous version which has now surmounted to 9.1.
Obviously, any users of the app would be quite confused if the version jumped from 2.41 to 9.1 overnight.

It was you who defined the new version as 2.41 in iTunes connect. Any new version should be higher than the last one. So the straightforward solution is removing the 2.41 version from iTunes Connect and add a new 9.1 version. Then iTunes Connect and your binary will be in accordance and you will be able to upload the new version.

Related

Issues distributing Flutter app from XCode 13 (AppStore)

I develop the app on a windows PC and then I send the file I'm using to a Mac from the company. From there I did an upload to the AppStore last week (after some problems) with a first Mac. I made some changes on the App and now I tried to upload again from another Mac. This time I am able to do the whole process without any mistakes but after clicking Distribute App and accepting everything and no Issues on XCode I get an email saying "The build status of MyApp (version) has changed to Invalid Binary". Inside the message they say the bundle id is already taken. I've checked this and on the details (Archive window) of my app I've got the correct identifier, same as in developer page from apple, and the team is also the same.
Of course all this is with automatic signing. And certificate is for distribution (I don't really know how to confirm, but this one is available)
I've got a couple questions about this.
Do builds have to be the immediate following? I mean, I can't jump from 1 to 4, for example?
I deduce version and build is always taken from the runner configuration on XCode.
Should I always submit the same folder? Instead of making new copies of the version.
On a desperate attemp of trying things I created a new version from App Store Connect plus sign in my App.
Can I delete it? Can I use the same version I named it on XCode to upload? Can I use any other named version to upload?
What else should I try? Next thing I'd do would be deleting the Bundle ID and creating a new one, but that doesn't solve my problems on the long term.
I am using:
XCode 13.2.1
macOS Monterey 12.2.1
I tried changing versions and builds on Xcode, expecting to create the correct one.
I tried from an old mac to see if it was that I haven't got the good certificates, expecting a correct upload.

Update AppStore connect build version

Our app was uploaded to our AppStore connect account with incorrect version. Supposedly the app should have a version 1001.200211, but we incorrectly entered 1010.200211 which is too large.
The first number in our version 1001 indicates the iteration number the release happen, the expected next version would be 1002 or 1003 but since we already entered 1010.200211 the next release versions no longer valid and will not be accepted!
Is there a way to update the build version after it has been uploaded in our AppStore connect account?
There is currently no way to change the build version of an app. You may be able to contact Apple Support to help you with this by deleting that binary but there's no way to do this yourself.

Why would App Store Connect say "Newer Build Available" when there isn't?

I made a new build of my app (version 2.2 build 11) and uploaded to App Store Connect.
Then I used "(+) Version or platform" to prepare version 2.2 for submission. When I press "Submit for Review", I get a warning:
Newer Build Available
Are you sure you want to submit this build for review? A newer build of your app is available. To submit the newer build, delete this earlier build and resubmit.
The currently released version of the app is 2.1. The "Activity" tab of App Store Connect only shows this build (11) for version 2.2. Build 10 was version 2.1.
What does this error actually mean, and how am I meant to resolve it? The obvious thing is to try deleting this build and resubmitting it, but I'd like to understand more about the error, especially if it turns out deleting and resubmitting doesn't help (haven't tried yet).
Solved it.
As an infrequent iOS developer, I thought that specifying the version number after hitting "(+) Version or platform" would be enough. But I missed actually choosing the build far down in the submission form.
Presumably it defaults to the previously submitted build, which in this case would be 2.1 build 10, causing the error.
So the error message could have been better, but it was ultimately something I missed.
Check Activity tab, if it says 'Processing` than you will not be able to add the build to the release, and you will get this error message.
Wait for about 10, minutes for it to complete, add your build to the release, and you are good to go.

Trying to re-upload app compilation to iTunes Connect

Alright, I'm trying to upload my first app to the App Store, at first it got rejected due to a simple bug, But I can't figure out how to re upload the fixed version to iTunes Connect. When I try to send it through Xcode ou Application Loader, I get the following error:
The bundle uses a bundle name or display name that is already taken.
The app's version is 1.0, the build number is 1. I can't figure out how to replace the older rejected compilation with the new one. Every time I try sending a new compilation, I get this error. I already tried changing the app's version and bundle numbers. I also can't make a new version or even delete the app from iTunes Connect.
I'm using Xcode 9.
I probably rejected the rejected build, so the app's status is "ready to send" again, like in the beginning.
The error you have mentioned, does not seem to be about the version, but rather the app name. Its been asked and answered already
For versioning :
Read the Technical note on Version Numbers and Build Numbers.
Specifically :
For every new build you submit, you will need to invent a new build
number whose value is greater than the last build number you used (for
that same version).
You you will have to bump your build number.
Turns out it was the app's name (Display name)! Looks like that if you compile it with a different display name than what's on iTunes Connect, it will get you that error!

Internal Testflight build not installing hangs at 90%

My client is trying to install a build. Everytime, it hangs at 90%. Sometimes they leave it -- still hanging -- and check the app and see the version numbers as incremented.
This time though, they've left it running there for 5 minutes and still the version hasn't updated.
They removed the app and tried to install again and it's not installing, just hanging. How do I fix this?
I had this same issue and worked with Apple for literally a month going back and forth with there engineers. In my case it was my build number had a 0 after a . which for some reason they have a bug that considers that an 'old' version of your app.
Maybe you are having the same issue:
OK = Build #: 2015.6.29
Not OK = Build #: 2015.06.29
I know it sounds ridiculous but that was the fix for my issue. Not also Apple made mention that I shouldn't start my version number with 0 either, but I can not confirm that.
I ran into this same problem today but only used external testers, so while I suspect the following should apply to internal testers, I can’t confirm. Here is what I found in the documentation:
From App Distribution Guide: Setting the Version Number and Build String
The build string represents an iteration (released or unreleased) of the bundle and is also a two-period-separated list of positive integers, as in 1.2.3. For Mac apps, the user can click the version number in the About window to toggle between the version number and the build string. For details on possible values, see CFBundleVersion in Information Property List Key Reference.
Information Property List Key Reference is in documentation for Core Foundation Keys:
CFBundleVersion (String - iOS, OS X) specifies the build version number of the bundle, which identifies an iteration (released or unreleased) of the bundle. The build version number should be a string comprised of three non-negative, period-separated integers with the first integer being greater than zero. The string should only contain numeric (0-9) and period (.) characters. Leading zeros are truncated from each integer and will be ignored (that is, 1.02.3 is equivalent to 1.2.3). This key is not localizable.
It should have been a tip-off that my new build showed up in TestFlight as 1.1, instead of the 1.01 in my Xcode project.
We got into this situation two different ways. It started off by submitting a build, call it 0.9.1. Everyone was happy and could install.
We then submitted 0.9.2, somehow the provisioning profile became invalid after submitting. The result was that folks would get to 90% then be told that it could not be installed.
After we discovered that the profile had gone invalid, we turned off the switch for TestFlight testing. Users that continued to follow the email link would be presented with 0.9.2 even though the build wasn't available and would get the same 90% experience. For these users, we could instruct them to tap the "Close" at the top left where they would return to the list of apps in TestFlight and there they could tap on 0.9.1 and be good to go.
After this I invited some new testers. All of the new tester receive invites for 0.9.2 even though it is disabled, and there doesn't seem to be a way to help them. We are just going to have to submit a new build.

Resources