Как я могу поймать все исключения в IOS 5? - PullRequest
0 голосов
/ 27 марта 2012

Я борюсь с проблемой, из-за которой мое приложение вылетает при запуске. При попытке запустить мое приложение в симуляторе iPhone оно сразу разрывается в основной функции. Я не могу определить, почему это так. В моей заявке на делегирование я пытаюсь перехватить исключение с помощью NSSetUncaughtExceptionHandler.

    void uncaughtExceptionHandler(NSException *exception){
    NSLog(@"%@",[exception reason]);
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{  
    NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);
    return YES;
}

Это, похоже, не помогает, так как мое приложение все еще ломается в main () и, кажется, никогда не вызывает приложение: didFinishLaunchingWithOptions:

Я также пытался установить глобальную точку останова objc_exception_throw на уровне пользователя. Опять же, приложение просто кажется сломанным на main ()

Может ли кто-нибудь дать мне несколько советов или приемов, которые я могу использовать, чтобы попытаться отследить эту проблему?

Большое спасибо!

1 Ответ

1 голос
/ 27 марта 2012

В XCode перейдите к навигатору точек останова (cmd + 6).

В левом нижнем углу нажмите кнопку «плюс», нажмите «Добавить точку прерывания исключения». Выберите Все исключения и Вброс.

Это должно создать точку останова, которая поможет вам определить, где генерируются какие-либо исключения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...