- 首先将自己的手机连接到mac电脑,然后通过xcode的顶部栏 Window-Devices找到自己的设备
- 点击Open device log,打开手机的日志面板,可以查看到Crash的日志,然后左侧列表中,右键选择导出,存放到和dSYM 同目录下,命名为CrashLog.crash,其实名字随意,主要下面的命令要用,自己对应好就可以了
- 在上一步的窗口中,点击想要查看的crash log的日志,如果下面这段
hread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 UnityFramework 0x116bb8d20 0x1146d4000 + 38685984
- 比如上面的两个0x开头的就是地址
- 通过Mac的终端命令行打开dSYM的目录,然后执行一下命令(xCode11以上版本哦)
atos -arch arm64 -o FileName.dSYM/Contents/Resources/DWARF/UnityFramework -l 0x1146d4000 -f CrashLog.crash > SymbolicatedCrashLog.crash
其中FileName就是你的dSYM的文件名,然后可以通过右键这个文件,查看包内容,打开对应的路径,看DWARF目录下的app的名字,上面的例子就是UnityFramework, 然后把地址替换掉你想要查询的地址
- 执行完毕上一步后,目录下就产出了一个SymbolicatedCrashLog.crash文件了,然后可以查看里面的堆栈信息了, 可以查看类和函数名,至少是人类可读的语言啦
网友评论