查找 EXC_BAD_ACCESS 问题根源的方法

http://www.cocoachina.com/macdev/objc/2011/0219/2661.html


查看真机crash信息的方法


获取ios设备上的 Crash Log 的方法

1.有mac机,并且安装有xcode
在xcode的Window->Orgnizer->Device Logs里面可以看到连着的iphone(ipad)设备上面的程序crash的记录,export对应的crash文件。

2.mac机或pc机,安装有itunes
可以直接连接到itunes,itunes会自动把crash文件同步到电脑上,
在mac上的路径是:/Users/yinyi/Library/Logs/CrashReporter/MobileDevice/iphone(ipad)设备/.crash文件
在pc上的路径:C:\Users\AppData?\Roaming\Apple computer\Logs\CrashReporter/MobileDevice?/iphone(ipad)设备/.crash文件

由于设备上的一个crash记录只能同步一次,一旦在某台Mac上查看了Device Logs,设备上的crash文件就都会放到这台Mac上。如果崩溃的程序正好是这台Mac编译出来的话,并且对应的同时编译出来的app和dSYM文件还在build目录下的话(即还没编译过其他更新的版本),Orgnizer会把crash文件的函数名解析出来,如果没了的话,就是光秃秃的地址了。如果是只有光秃秃的地址的话,我们就要分析.crash相关的信息

分析.crash文件的方法 == 

1.找到symbolicatecrash工具的路径
find /Developer -name symbolicatecrash -type f
2.利用symbolicatecrash工具转换16进制的.crash文件
把symbolicatecrash工具和.crash文件、.app.dSYM文件复制到同一个文件夹下执行:./symbolicatecrash MyApp_symbol_2012-10-09-182455.crash MyApp_symbol.app.dSYM > MyApp_symbol.crash
生成的MyApp_symbol.crash就是有函数名的.crash文件了。





你可能感兴趣的:(查找 EXC_BAD_ACCESS 问题根源的方法)