I'm new to iOS development, and my problem is that the latest iOS update (8.0.2 at the time of writing this) causes my app not to work properly. My app is already for sale in the app store, so any user who has already upgraded to the newest iOS version is downloading a broken app. I have a plan for fixing the bug, but the turnaround time for new releases is quite slow, and I don't want to screw over all the new users while I wait for the updated app to get approved.
What should I do?
I know I can set the "Deployment Target" in Xcode, but this does not seem to prevent users with the newer iOS from still buying it.
Today:
Fix your app as quickly as possible (that turnaround is only about
you)
Submit it to Apple
Request an expedited review request review to Apple, explaining why you need a quick turnaround (critical bug fix is a valid reason). You can't abuse of expedited reviews, so use them carefully.
In the future:
Before Apple releases a newer iOS version, they release developer previews. You need to use these to make sure your app will run smoothly when the newer iOS is released to the public.
Related
I think this is not required, at my personal experience only new iOS specific features in my application will require a new release, but a personal client is asking me to confirm this.
With every new XCode release, do I have to rebuild and publish my application in order to make it available at the AppStore of new iOS Release?
If there is any official documentation that proves this will be appreciated!
You do not need to re-publish. Apps remain in the App Store until the developer pulls it (or very rarely, Apple pulls it due to policy violations).
There is likely not any documentation that explicitly states this, but consider a scenario where somebody gets the new iPhone 13 and opts to restore it from iCloud. Data is pulled from iCloud, but apps are restored by re-installing them from the App Store. If apps disappeared from the App Store because they haven't been re-compiled, then anybody who upgraded their phone would discover that a large number of their apps had disappeared.
Anecdotally, my company has apps in the App Store that haven't seen a new submission in over 2 years (since iOS 12). Those apps are still in the store.
You can test your iOS app using the new Xcode 13 and if you got some bug using the new iOS SDK, you can fix it and submit a new version to App Store using the new Xcode.
Its prudent to test your apps on each new OS (preferably before the public release) but in most cases no new release is necessary. Over time you may want to update your app to take advantage of new features or to better support new devices. No app will never last forever but you will likely be able to go some time before having to update.
yesterday i saw on my iPhone that was an update of one of my apps without nothing updated, so i checked in iTunesConnect and nothing, no updated released.
Is it possibile? Also to my friends is happened at same day.
Thanks a lot!
It has happened again in the past when a bug with bitcode was discovered. When you submit your app to Apple with Bitcode enabled, Apple can (and will) build and optimise your app for each processor architecture. So it is possible that for some reason Apple triggered a rebuild of your app and that is the reason that you saw an update.
We requested an expedited review for an update of our app that fixed a critical bug. The expedited review was granted and now our version 1.1 is up instead of our version 1.0. But the app is the same.
The changes we made to the app are not in the new version. We have an ad hoc version of the same binary and in the ad hoc version the changes are there. I dont know if somebody has had the same issue and if there was a way to fix it. This is our first expedited review and already contacted iTunes developer support but we are still waiting for their response.
Maybe now it takes time to propagate the servers with the new app or somehow the metadata for version 1.1 was passed to the appstore with the binary for 1.0. This is the first time we ever had problems after an update.
It may be one of two options:
- The servers (Apple's servers) have not still propagated the correct version.
- The servers have inconsistent information, so they won't propagate the current version till you contact Apple. This happened to a dev some months ago and here is his answer: iOS 7 users unable to install new version
Seems to be a common problem at the moment. See
https://forums.developer.apple.com/thread/70511
My app is 'Ready for sale' for almost 48 hours now, but the AppStore still shows the previous version.
Here is the history of my app.
In v1.0 I didn't have IAP.
In v2.0 I had IAP code, and it worked while I was developing. When v2.0 was released, I checked and run a non-testing device (an iPhone under my itunesconnect user name, but does not have provision file installed, so I take it as a non-relevant device) and I got error message, which of course was set up by myself. The error is for situation that the app could not connect to Apple or could not find IAP for the app. The error shows up quickly right after clicking buy IAP. This is as expected since no product ID is available. It doesn't need wait payment queue at all.
Then I checked itunesconnect and found the IAP probably not linked to the app, so I updated to v2.1 and added the IAP to my app in itunesconnect (no real code change, at least no IAP-related code changed), and IAP works fine finally in development stage in my testing iPad. Now v2.1 came out, but I still have the same problem as v2.0, that means IAP encounters error, most likely no IAP product ID found. At the time I'm typing, v2.1 has been released for 2 hours, and I still have quick error --- the product ID problem, most likely.
[edit]
BTW, there was a glitch between v2.0 and v2.1. When I noticed the IAP was not linked to my app, I did something too quick so that I cannot remember exactly. Basically the IAP was hung over there, I could modify it or submit it. After talking to Apple, I was told I need reject my binary of v2.1 and resubmit v2.1 along with the IAP. I don't know if this is related, but anyway I can buy IAP in development stage with my sandbox testing iPad.
[edit]
Any idea? Thanks.
BTW, the app is set to English default, but with Chinese/Spanish localization.
[edit]
One more thing, don't know if it's related. All v1.0, v2.0, and v2.1 versions are deployed to iOS 6 or later. When I was developing v2.1, I was trying to back to iOS 5 (via adopting so deprecated methods or constants). My app could run on iOS 5, but IAP wouldn't work iOS 5. Since IAP doesn't work, there's no point for me to go compatible with iOS 5, so I removed all deprecated methods and constants and went back to original v2.0 version and resubmitted with linked IAP to become v2.1.
For those who cares, here is my app. You're welcome to try. long press first page would get you to options page where you can try buy IAP --- no worry, there is supposed to be a confirmation dialog where you can cancel, even if my IAP works.
https://itunes.apple.com/us/app/icalc24!/id566916783?mt=8
[edit]
One more edit:
OH yeah, it works now. I don't which step of the following make it work:
1, I delete my app and restart my iPhone again (and again, yes) and re-download
2, it's 4 hours now after v2.1 is approved.
Currently an update to my iPhone application has been in review for over 10 days!!!
In that period of time I've been able to work out a few bugs and even add some small new features to my application. I know that it is possible to reject your binary, but I would rather go a head a publish my application then send apple a better version 1.1.1...
So basically my question would be if I rejected my apps binary and submitted one right after would my app get pushed to the bottom of the review pile or would I keep my spot in line (since I've already been waiting for 10 days)?
No, rejecting a binary and immediately resubmitting a new one will not maintain your place in line: you would be knocked back to the start of the queue. I base this on my own experience, having rejected and resubmitted binaries a few times in the past.
Now, you might be thinking: "OK, what about the expedited review process?"
I can share some experience with that: With my latest app, I was in the same position you were in but I decided to go ahead and release 1.0 and then submit 1.0.1 soon afterwards. When 1.0 was approved and released, Apple chose it for the "New & Noteworthy" section. All of a sudden the app was getting a lot of exposure—and complaints about a bug that I had fixed in 1.0.1. I submitted 1.0.1—and as well as a request for expedited review—which was approved. 1.0.1 was released about 24 hours later.
So, you'll have to weigh the pros and cons for your own app, but I hope this info helps. :)
Yes it would, rejecting and resubmitting the binary will place you at the bottom of the review queue. It's unfortunate, but there is no work around.
If Apple allowed that then many devs would start uploading their beta version while trying to fix those last few bugs.
I had the same issue. I had submitted my app and it was in review. I was asked to change some metadata and resubmit the app. While doing that, I discovered a UI issue and fixed it. I was in a dilemma as to keep the current binary and release a version 1.01 or upload the new version. I did not want to send my first app with an issue so, I went ahead and rejected the binary and uploaded the new one. I immediately contacted Apple developer technical support. They claim that "The review time will not be affected and that our internal systems do have process your build before it can be reviewed (verifying it’s general correctness and resigning your app for the store), which can add some delay. However, that delay is fairly small and is only a minor factor in review time. More to that point, any delay here is much smaller than the delay of a new submission." I hope that is true and hope my app is not stuck in the "waiting for review or in review" limbo :(.