iPhone App Submission - Rejecting Binary & Uploading New Binary - ios

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 :(.

Related

iOS App in "Waiting for review" stage, if I release a new build do I have to repeat the process?

My first iOS app is currently at the "Waiting for Review" stage on iTunes Connect.
Now, we are working on some bug fixes and I need to upload a new build, however, I would like to release the app as soon as possible.
My question is after an app is accepted, how long approximately does it take for Apple to review a new build / version for an app ?
Also see http://appreviewtimes.com to get an idea of current waiting times, based on developers self-reporting on Twitter.
Same as always, 7 to 10 days. Except when you ask for an expedited review, but then you should have a really good reason (and a really popular app ;-).
Any time you change your binary you go back to the end of the review line. The time varies depending on how busy the review team is.
The bulk of the time seems to be in "waiting for review." The actual review process seems to be pretty quick, assuming they don't need more info from you to make their decision.
The process of getting fixes to a rejected build seems to be faster than the original review process.
I would suggest planning on an app review taking 10 days. It might take less time, but that seems to be fairly typical.
94% of all iOS app updates are reviewed within 5 business days at the moment.
You can always check https://developer.apple.com/support/app-store to get the latest info on that.

How to respond if iOS update breaks my app?

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.

Immediate App Crash at Splash Screen

We submitted our app update (1.01) to the App Store on Wednesday of last week. The app included a few major bug and authentication fixes. We submitted our working/bug-free app to the App Store via the normal procedure. Sunday night at 8:31PM EST we saw that the status of our app went to "In Review". Then at 9:17PM EST the app was approved and the status changed to "Processing for App Store".
All users who now go into the App Store and download the 1.01 update are seeing the app open the immediately crash at the splash screen. We've tested this on multiple devices and all 1.01 updates crash immediately. We submitted our distribution-ready app in a working state, there were no crashes or bugs on our end. 
Knowing that the app was under review for nearly and hour reiterates that the app was in a working/crash-free state upon submission. We've read of a few cases where other apps were submitted, approved and the app would crash upon opening the. We're looking to you for a quick resolution to this App Store issue.
Are there ways to revert to 1.0? Any assistance would be helpful?
There is no way of reverting to previous versions :( You can only remove app from store but as I understand this is not the case. From my own experience I can say that the review team doesn't always find bugs in apps under review and this is how it actually ends with not working app and irritated customers.
You cannot revert. However you can fix the issue and request an expedited review cycle. https://developer.apple.com/appstore/contact/?topic=expedite
Sidenote - do you use Core Data? Maybe a migration failed? This is pretty common if you changed the data model. If the reviewers just installed the new version without upgrading, they wouldn't have seen the crash. Could explain that... I have a hard time believing they would have passed a launch crash that they observed.

Does ios app Metadata rejected means binary is good

I recently got a phone call from Apple saying they would reject our app since there's a problem with the metadata. I asked whether there's a problem with the app itself and she said she doesn't know because she's not part of the review team. She said it should be ok.
So I changed my metadata and resubmit the app, and the status now is in review. According to itunesconnect programmer guide, they will reuse the binary. Does that mean the binary is good? Is it possible that they will take a look at the app again and reject me for some reasons other than they specified in the resolution centre?
I know this is a question that probably only apple can answer, but this is our first app so i don't really know how it works. I asked apple but they didn't tell me anything.
You do not need to upload new binary. They will review it again and approve it (or reject for other reason). It took only few hours in my case. But you can't be sure the binary has already been checked. Maybe they only did the metadata so far and will check the binary after your metadata correction. Anyway, no need to upload anything now.
Usually reviewers stop their review process as soon as they find an issue. This means that the metadata rejection can be the first of a longer list (hopefully no!) or that they reviewed your whole app and found the only issue at metadata level only: in such case fixing your metadata should be enough.
Recently I saw one of my apps rejected due to a mistake in adding an In App Purchase (basically the app was referring to an IAP still not in iTunes). After fixing it (no binary change, just adding the "in app") they found an issue in the app this time and then the binary was submitted. It would have been quite easier for me to know of the two issues together and fix them once, instead the triple-trip delayed my final app submission by 10 extra days (consider 5 days between two consecutive reviews)
From my experience, it doesn't always mean the binary is good. They may have very well reached the point of checking metadata and found an issue without testing the binary itself. Expect the Unexpected with Apple.
This is due to metadata information, no need to upload new binary. They will review it again and approve it (or reject for other reason). In my case, I was using location in background mode but in my Application description did not include the required "battery use" disclaimer, I changed the meta data (Application description only) according to apple message. It took only few hours (hardly 4 hours) and application was live. I was socked :) because some people was saying, It will take upto 7 days(as apple normal process).
Following was reason for app reject in my case(Below was the mail, I received from Apple)
From Apple
   * 2.16 - Multitasking Apps may only use background services for their
intended purposes: VoIP, audio playback, location, task completion,
local notifications, etc.
2.16 Details
Your app uses the Location Background mode but does not include the
required "battery use" disclaimer in your Application Description.
Next Steps
Please add the following disclaimer to your Application Description:
"Continued use of GPS running in the background can dramatically
decrease battery life."
Please see the app store screenshot for confirm.
In my experience, they reject the app as soon as they find a reason and they won't review it any further until next submission. So if the metadata is rejected it does not mean that they have approved the binary.

How to Minimize App Store Approval Time

What are some things and techniques I can do to minimize the time it takes for my apps/updates to be approved for the App Store? Do smaller updates generally take less time, and do paid applications take longer than free ones? What about the size of the binary?
In my experience, everything takes exactly the same amount of time. You sit in the queue for 6 days, then they review it for an hour or so (much less for updates), and you're either in, or rejected. If you are rejected, it will take a few more days to work through whatever the issue was.
So the only way to take less time, is don't be rejected. :) Seriously, though, go read the developer agreement and the "do this and we'll reject you" document.
They aren't even looking at your app for that 6 day "cooling off" period, so I can't imagine what you could do to make it go faster. (Although I've heard that there is a mechanism for expedited updates in emergencies; but I have no first-hand experience with that).
I cannot post a comment yet, so I am posting this as an answer to your question based on my experience submitting new apps, as well as updates to existing apps in iTunesConnect.
Unfortunately there really isn't anything you can do to speed up the process, aside from fixing the issues in your app if it gets rejected, and re-submitting asap.
Apple allows you to request an expedited app review.
https://developer.apple.com/contact/app-store/?topic=expedite
Please note: If you're facing extenuating circumstances, you can request the review of your app to be expedited by completing the form below. Expedited reviews are granted on a limited basis and we cannot guarantee that every request will be approved.
I have personally used it twice. Once for a cosmetic issue in an app, which was rejected. Another time for a critical bug fix, which was accepted. I wrote a very detailed explanation of what my application did, what the bug was, why the bug was important to our (Mine and Apple's) customer.
One thing I have found is that free apps versus paid apps sometimes take different amounts of time.
For example I have a paid and free version of the same app. I submitted an updated for both one right after the other. First I submitted the free version, then I submitted the paid version immediately after. For some reason the paid version went into review, and was approved a day later, where as the free version is still waiting for review even know I submitted it first. I suspect that free and paid apps have different 'queues' or 'priorities' over at apple.
You can request an expedited review in emergencies. I used it once and the update was available about one or two days later.
However, they say, the expedited review will only be granted in limited cases. So I wouldn't use it if not absolutely necessary.
You can request the expedited review in iTunes Connect. I think the option was on the detail page for an app which is 'Waiting for Review'. There was also a list, in which cases an expedited review can be granted.
App approval times will vary depending more on what else is going on, and can otherwise vary for no obviously predictable reason. I've seen a small update to a simple app take longer to approve than a new large app with lots of features.
Maximum app review times seem to be around the days that lots of other developers are submitting apps, near some major holidays, shopping seasons, or when Apple has just released some OS update, app service or new device. Shorter wait times can sometimes be had by avoiding these longer review time periods. There are services that track the number of new apps introduced per week. Look for the nulls.
Staying well away from any hint of violating any of Apple's App store rules or guidelines, or anything else that can be seen as controversial, also helps not getting hit by a long (additional time required) review time. Other factors seem to make less difference.
Take a look Apple review support
Once you've submitted your app for review, you can view its status in the My Apps section of iTunes Connect or on the iTunes Connect App for iPhone and iPad. Review times may vary by app. On average, 50% of apps are reviewed in 24 hours and over 90% are reviewed in 48 hours. If your submission is incomplete, review times may be further delayed or your app may be rejected. Once your app has been reviewed, its status will be updated and you will be notified.
I tried to use the expedited review for an app for a skistation, so it would be available before the winter season started and it was declined.
You need obviously a very good reason like a big security issue etc to get a expedited review.
Step 1:
Related to your project, note what is the third party libraries are involved and make a note what makes it rejected in apple store.
Step 2:
Make your code stable and keeping in mind about rejection points which you cant keep
(i mean like really stable no warnings, no chance with wrong icons, no chance with mistakes).
Step 3:
Finally, then decide to send for review
That will at-least speed up your process. once you get rejected then its a bad, you have to really wait longer. (from experience saying)

Resources