0xS*_*ina 7 xcode cocoa-touch objective-c ios
我的应用程序一度崩溃.它没有告诉我为什么,异常断点发生在
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
Run Code Online (Sandbox Code Playgroud)
所以我不知道是什么导致了崩溃.在左侧,它告诉我这是因为objc_expcetion_throw.我该怎么调试呢?谢谢
在这种情况下,我将创建一个断点来打破所有异常.如果您只是单击断点选项卡上的添加按钮,则这是创建的默认断点.
有了这个断点,XCode将停在异常点,我会看到它与堆栈一起发生的代码行.
我会发布一个这样的图像,但我没有足够的代表!
使用@try/ @catch:
@try {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
@catch (NSException *ex)
{
// log ex...
}
Run Code Online (Sandbox Code Playgroud)
或者您可以使用未捕获的异常处理程序:
void uncaughtException(NSException *except)
{
// log Except
NSLog(@"Exception!");
}
NSSetUncaughtExceptionHandler(uncaughtException);
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
Run Code Online (Sandbox Code Playgroud)
最后,你总是可以打破objc异常:
Product->debug->create symbolic breakpoint
Symbol: objc_exception_throw
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4888 次 |
| 最近记录: |