Жизненный цикл приложения от входа в функцию main() до -didFinishLaunchingWithOptions: меняется от системы к системе. Именно поэтому важно полагаться только на ту информацию, которая публично доступна в документации от Apple — они оставляют за собой право тихонечко менять все, что не описано ими. Это касается не только этого аспекта, но и всего поведения системы.
Вы можете поисследовать, попереопределять методы (рантайм позволяет в этом смысле практически все, что угодно), посидеть в отладчике, это интересно в конце концов. Но если вы будете полагаться на результаты ваших исследований, а не на документированное поведение, ваш продукт с выходом новой системы может перестать работать.