转自:http://blog.csdn.net/onlyou930/article/details/7894874xcode
最近链接iOS5.0.1真机调试的的时候,发现UncaughtException致使crash以后*** First throw call stack:后面没有打印可读的调用堆栈,之前崩溃以后会显示详细的调用的方法名等信息,可是如今都是一堆内存地址0x…..0x…..。app
我起初也不知道怎么回事,以前彷佛也没碰到过。谷歌了一下,看到了一篇文章(http://stackoverflow.com/questions/7841610/xcode-4-2-debug-doesnt-symbolicate-stack-call)讲貌似是iOS5.0开始作了某些修改,致使不能打印方法名了。可是也有补救措施:.net
本身定义一个方法:debug
static void uncaughtExceptionHandler(NSException *exception) {调试
NSLog(@”CRASH: %@”, exception);code
NSLog(@”Stack Trace: %@”, [exception callStackSymbols]);blog
// Internal error reporting内存
}get
而后在程序初始化的时候调用(比方说放到- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 里面的第一行):it
NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);