iOS 根据crash log以及dSYMS 定位bug

前言

device log 获取路径:xcode - window -Devices and Simulators - device - view Device logs
日常发生崩溃时拿到device logcrash文件,符号化以后基本就可以定位到问题,如果系统符号化不完全,基本上就定位不到问题。

准备

  1. crash log 文件
  2. 发生崩溃时app的对应的dSYM文件
  3. symbolicatecrash 文件 (黑色)

创建一个文件夹(比如命名为定位dSYM
把上面的三个文件放到新建的文件夹中。

crash log如下:

生成最终的符号化文件

  1. cd到 刚才新建的目录。
  2. 执行命令./symbolicatecrash ./(crash名字) ./(dSYM名字) > (生成新的crash名字)

文件目录如下:


比如: 定位dsym 是我创建的文件夹名字

cd /Users/lai/Desktop/定位dsym 
./symbolicatecrash ./appName.20191112.crash ./appName.dSYM > newCrash.crash

如果报错:Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69.
那么执行:

export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer

最后再执行一次上面的命令:

./symbolicatecrash ./appName.20191112.crash ./appName.dSYM > newCrash.crash

最后生成后目录如下:


end

打开新生成的crash log 会发现已经符号化,可以定位到代码了。
如图:

你可能感兴趣的:(iOS 根据crash log以及dSYMS 定位bug)