最近在项目中遇到程序崩溃,
All Exceptions 断点已经加入项目中,Enable Zombie Objects也已经勾选。但是运行程序还是没有显示崩溃在哪里,只是报libc++abi.dylib: terminate_handler unexpected的错误。如图:
此时如何解决呢?怎么方便定位呢?
有一个小技巧就是在main文件中加入异常捕获语句:
int main(int argc, char * argv[]) {
@autoreleasepool {
@try {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
@catch (NSException *exception) {
NSLog(@"SunGiantor...........................exception:%@", exception);
}
@finally {
}
}
}
运行一下,就可以将异常打印出来了。
很清晰明了的展现出了错误的原因是调用哪个类的时候,出现的异常。直接就可以帮助我们定位到崩溃的地方。
简单方便。