Используйте @try
/ @catch
:
@try {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
@catch (NSException *ex)
{
// log ex...
}
Или вы можете использовать обработчик неперехваченных исключений:
void uncaughtException(NSException *except)
{
// log Except
NSLog(@"Exception!");
}
NSSetUncaughtExceptionHandler(uncaughtException);
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
Наконец, вы всегда можете разбить исключения для объектов:
Product->debug->create symbolic breakpoint
Symbol: objc_exception_throw