iOS手动解析crash符号表

监测crash的三方平台Bugly 等支持解析Crash日志,但是要你提供dsym符号表;
所以每次打包的dsym表要保存,便于查找crash定位。
虽然各个平台都支持直接解析crash日志,但是手动解析的也要了解一下。
1.在桌面新建个一个文件夹 temp
2.这里要用到xcode自带的工具 symbolicatecrash 工具,这个工具的位置可以找到,通过下面命令
find /Applications/Xcode.app -name symbolicatecrash

搜索后的结果是

/Applications/Xcode.app/Contents/Developer/Platforms/WatchSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash

分别对应不同平台的。
3.复制 symbolicatecrash 到 刚才新建的文件夹 temp

把对应的Crash 日式 复制到 temp 文件夹

5.把 对应的 dsym符号表 复制到 temp 文件夹

cd 到该temp 目录下

运行 symbolicatecrash 工具
./symbolicatecrash crash日志 ***.dSYM > symbol.txt

第6部报错
Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69.
使用下面命令即可
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
然后打开 symbol.text 就是解析后的文件 就可以定位到具体的位置.
查看符号表对应的uuid
xcrun dwarfdump --uuid <dSYM文件路径>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容