iOS crash栈解析

准备工作
栈解析需要三个文件,分别是.crash, symbolicatecrash, .dSYM

获取crash

  • OS X:~/Library/Logs/CrashReporter/MobileDevice/
  • xcode->window->Devices-> ->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

你可能感兴趣的:(iOS crash栈解析)