Что происходит, когда main вызывается в приложении для iPhone или iPad? - PullRequest
2 голосов
/ 17 ноября 2011

В настоящее время я пытаюсь отладить проблему с приложением для iPhone. Когда я запускаю его в Xcode, вызывается main, но не - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions. Это приводит меня к важному вопросу, который должен помочь мне решить эту проблему, а также лучше понять последовательность запуска приложения для iPhone / iPad. Итак, кто-нибудь может кратко объяснить , что происходит, когда main вызывается в приложении для iPhone или iPad?

Спасибо!

Ответы [ 3 ]

1 голос
/ 17 ноября 2011

Я только что нашел это , что довольно интересно.

1 голос
/ 17 ноября 2011

Когда вызывается main,

UIKIT_EXTERN int UIApplicationMain (int argc, char * argv [], NSString * PrincipalClassName, NSString * DelegateClassName);

вызывается.

Вот что Apple должна сказать об этом методе.

Если для PrincipalClassName указано nil, используется значение NSPrincipalClass из Info.plist.Если не указан ключ NSPrincipalClass, используется класс UIApplication.Класс делегата будет создан с использованием init.

Вы можете проверить эти записи в main.h или info.plist.

0 голосов
/ 17 ноября 2011

Обратите внимание, что если вы создадите новый проект в XCode с одним из шаблонов, XCode создаст очень хороший основной метод, который обязательно вызовет для вас didFinishLaunchWithOptions, который вы можете анализировать и следовать указаниям XCode.

...