准备工作
栈解析需要三个文件,分别是.crash, symbolicatecrash, .dSYM
获取crash
OS X:~/Library/Logs/CrashReporter/MobileDevice/
xcode->window->Devices-> <DEVICE_NAME> ->View Devices Logs
获取symbolicatecrash
命令:find /Applications/Xcode.app -name symbolicatecrash -type f
获取.dSYM
- 如果是打包平台或者其他打包工具,可以通过在其上找到.dSYM
- 如果是Xcode开发中的app,可以在
commend+r
之后在Products中找到Products->xx.app->show in finder
解析前确认uuid
只有当xx.app, xxx.app.dSYM, crash文件这三者的uuid一致才能够解析出正确的日志文件。
- 查看xx.app的uuid
dwarfdump --uuid xx.app/xx
- 产看xxx.app.dSYM的uuid
dwarfdump --uuid xx.app.dSYM/Contents/Resources/DWARF/xx
- 查看crash文件的uuid:位于crash日志中的Binary Images中的第一行尖括号内
解析crash
- 将
.crash, symbolicatecrash, .dSYM
放在一个文件夹中 export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
- 命令行执行
./symbolicatecrash yy.crash xx.dSYM > xx.log
网友评论