使用symbolicatecrash分析本机崩溃日志

今天遇到一个线上偶现的崩溃,正好是自己手机的崩溃,想想这种用苹果自带的 symbolicatecrash 应该能精准的定位到崩溃所在的位置 !

具体步骤如下:
1.Xcode->Window->Devices,点击 View Device Logs,在里面找到 app 对应的崩溃日志,右击->Export log


使用symbolicatecrash分析本机崩溃日志_第1张图片
Paste_Image.png

2.通过这个日志,只能大概知道是数组越界问题,并不能精确的知道是哪一个类的哪个方法导致的崩溃

使用symbolicatecrash分析本机崩溃日志_第2张图片
Paste_Image.png

3.找到symbolicatecrash路径,我是Xcode7的,路径如下:

/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources

update Xcode 7.3:

/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versi‌​ons/A/Resources/symbolicatecrash

4.在桌面新建一个CrashLog文件夹,然后将以上目录下的symbolicatecrash文件,我们导出的crashLog,以及打包发布时生成的. dSYM文件放到这个文件夹下,如图:

使用symbolicatecrash分析本机崩溃日志_第3张图片
Paste_Image.png

5.打开Terminal,进入CrashLog文件夹下,执行以下命令

./symbolicatecrash ./*.crash ./*.app.dSYM > Result.crash
Paste_Image.png

如果报上图所示的错误,就先执行下面的这句,再重新执行上面的

export DEVELOPER_DIR=/Applications/XCode.app/Contents/Developer

最终可以看到,目录下生成了一个Result.crash,打开,里面可以精确的定位到问题所在!

使用symbolicatecrash分析本机崩溃日志_第4张图片
Paste_Image.png
使用symbolicatecrash分析本机崩溃日志_第5张图片
Paste_Image.png

你可能感兴趣的:(使用symbolicatecrash分析本机崩溃日志)