This problem has been driving us nuts for some time. We have applications, all built with Titanium (I’m mentioning this because I’m not 100% sure that the problem doesn’t come from there). The applications are up on the store, we updated them a few times since the every launch.
Right now, they supports armv6 and armv7.
For the next update, we want to add support for the iphone 5, which means that we have to drop support for armv6. Which is absolutly fine. We also don’t mind setting the minimum OS version to 4.3.
So we changed the build settings in xcode to armv7 armv7s, set the minimum os to 4.3, added the retina screens and so one, builded the app. We left everything else as it were. When we try to validate the app, we get this message :
this bundle does not support one or more of the devices that were supported in the previous bundle for this app
With a link to the apple manual page : http://developer.apple.com/library/ios/#qa/qa1623/_index.html
Which told us that the error might be because :
When you see this error message, you have changed the “Targeted Device Family” build setting (which modifies the UIDeviceFamily info.plist key.)”
But we did not.
Also, a few line below (in Targeting the latest iOS):
For example, if your app is no longer built with armv6, you should not add armv7 to your UIRequiredDeviceCapabilities. This may cause Xcode or iTunes Connect to erroneously reject your update.
Of course, we did not do that.
We even tried to make to change the app version to the next major one, as someone stated it solved it.
Has anyone a clue on how we remove armv6 support for good ? The only solution we found would be to delete the application and recreate it with only armv7 this time. This, of course, would not be acceptable as we would lose comments, ratings and so on.
Ok I manage to get it to work and now I’m wondering what went wrong when we tried the first times. Here is what I finaly did (nothing more):
And here are all the things I did not do this time: