0

Please point me to the iPhone application launch time guidelines.

I see that there is a hard limit of ~24 seconds. OS kills application if it did not started in that time with the message:

com.bundle.id failed to launch in time

There is also a QA article on this. (24 seconds is the time until OS on my phone kills the app.)

But I think that there should be a shorter soft limit somewhere in the docs. However, I was not able to find it.

Cœur
  • 37,241
  • 25
  • 195
  • 267
Alexander Gladysh
  • 39,865
  • 32
  • 103
  • 160
  • This doesn't sound like something Apple would publish. Just follow Apple's guideline that says to keep the launch time as short as possible. – bpapa Mar 29 '10 at 17:44
  • Well, AFAIK, some consoles do have such limit documented. So, I thought, maybe Apple would do it as well. – Alexander Gladysh Mar 29 '10 at 20:22
  • 1
    My app gets killed at: Elapsed total CPU time (seconds): 20.220 (user 19.740, system 0.480), 100% CPU Elapsed application CPU time (seconds): 19.640, 97% CPU – Marky Sep 30 '11 at 05:04
  • 1
    guideline is **5 seconds** in 2016: https://developer.apple.com/library/content/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/StrategiesforHandlingAppStateTransitions/StrategiesforHandlingAppStateTransitions.html#//apple_ref/doc/uid/TP40007072-CH8-SW2, and 10 seconds in practice for iTunes Connect review. – Cœur May 02 '18 at 07:09

2 Answers2

5

From the iPhone Application Programming Guide

I don't think you will find any numeric limits in the documentation. Apple has been vague about that stuff for a reason. They don't want to come out and say that "apps that have a launch time greater than x seconds are not allowed". Your app may only get rejected from the App store if it's launch time was so long that it was simply unacceptable/unusable. I'm not sure where the 24 seconds number came from, but perhaps that is what Apple uses in it's automated testing for App store approval.

Apple's stance is simply: "Your app's launch time should be as short as possible. If your app takes a long time to launch, users will be less inclined to use it, which will only hinder your app's success." Seems pretty reasonable to me.

Cœur
  • 37,241
  • 25
  • 195
  • 267
CJ.
  • 1,034
  • 1
  • 9
  • 20
3

In WWDC 2012 Session 235 "Making a Great Impression With Every App Launch", Apple indicates that the launch time limit is 20 seconds. This is not a hard and fast rule as CJ says and could be changed in a future iOS release.

It's advised that the app should aim to launch within the launch animation time in order to appear to the user as having launched instantaneously. The launch animation times are 400ms on the iPhone and 500ms on the iPad. You should really be aiming for a launch time very close to this. WWDC 2012 Session 225 "Up and Running: Making a Great Impression with Every Launch" gives a lot of good ideas as to how you can achieve this.

You really shouldn't be anywhere near the watchdog timeout you're hitting in order to give users the experience they're after.

James Bedford
  • 28,702
  • 8
  • 57
  • 64
  • What is launch animation times ? Can you please provide some definition ? – Prem Mar 10 '13 at 16:22
  • I'm just referring to the launch animation starting when the user taps on an app icon and ending once the home screen has completely disappeared (and your app is taking up the full screen). At this point, if your app has completely finished launching then the launch screenshot of your app could be immediately switched to a running instance if your app, and the app launch would feel instantaneous to the user. – James Bedford Mar 11 '13 at 12:08