debug是程序开发过程中重要的工作,Xcode是一种比较人性化的开发工具,所以经常时候它会很友好的告诉你哪里出了问题,很容易能够找到问题所在。但有时Xcode也不会告诉你哪里出了问题,程序莫名奇妙的被挂掉。但iOS还是很友好的为我们提供了debug的API接口,只要简单的操作就能在终端中输出错误的所在。只要在
AppDelegate.m 中操作即可:
一、在AppDelegate.m中添加下面函数:
void UncaughtExceptionHandler(NSException *exception)
{
NSArray *arr = [exception callStackSymbols];
NSString *reason = [exception reason];
NSString *name = [exception name];
NSString *url = [NSString stringWithFormat:@"=============异常崩溃报告=============\nname:\n%@\nreason:\n%@\ncallStackSymbols:\n%@",
name,reason,[arr componentsJoinedByString:@"\n"]];
NSLog(@"%@",url);
}
二、在启动方法- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中调用
NSSetUncaughtExceptionHandler(&UncaughtExceptionHandler);
的函数。
只需要简单的两步即可完成了操作,只要程序出现异常都会在终端中输出错误所在。