常用crash收集:PLCrashReport KSCrashReport,比较新的是Fabric
dSYM文件:Xcode编译项目后,我们会看到一个同名的 dSYM 文件,dSYM 是保存 16 进制函数地址映射信息的中转文件。
dSYM的作用:当我们软件 release 模式打包或上线后,不会像我们在 Xcode 中那样直观的看到用崩溃的错误,这个时候我们就需要分析 crash report 文件了,iOS 设备中会有日志文件保存我们每个应用出错的函数内存地址,通过 Xcode 的 Organizer 可以将 iOS 设备中的 DeviceLog 导出成 crash 文件,这个时候我们就可以通过出错的函数地址去查询 dSYM 文件中程序对应的函数名和文件名。
如何找到symbolicatecrash:在shell中输入查找symbolications的命令: find /Applications/Xcode.app -name symbolicatecrash -type f ,得到路径就是Xcode的一个隐形工具,用于定位错误日志。
如何使用symbolicatecrash:
将
1.导出的crash日志
2.symbolicatecrash
3.xxx.app.dSYM文件
4.app下同名文件、
放到同一个文件夹下(需要保证大家UUUID相同才可以解析),运行类似如下命令,将解析好的文件重定向到一个文件。
eg.
./symbolicatecrash /Users/yizhou/Desktop/findCrashTest/ScrollView.crash >ScrollViewAutolayout.crash
可以看到解析后的crash报告
参考: