准备MyApp.app.dSYM
我们使用atos命令来完成符号化,具体命令如下:
$atos -arch <Binary Architecture> -o <Path to dSYM file>/Contents/Resources/DWARF/<binary image name> -l <load address> <address to symbolicate>
$atos -arch arm64 -o MyApp -l 0x0000000102728000
1.Binary Architecture:arm64、armv6、armv7armv7s 根据自己的情况来写。
2.Path to dSYM file: dSYM文件的路径。
3.binary image name: 你工程的名字。
4.load address: 基地址,如果我们的崩溃日志中没有这个信息,laod address = address to symbolicate - offset
5.address to symbolicate:当前方法的内存地址
一条崩溃日志
MyApp 0x0000000103ef6970 0x0000000102728000 + 24963440
0x0000000103ef6970(address to symbolicate)= 0x0000000102728000(load address) + 24963440(offset)
一般以app命名的地方就是崩溃的位置。0x0000000103ef6970为虚拟内存地址,0x0000000102728000为基地址。
开始进行命令行操作,cd .../DWARF到这个文件夹下
输入命令行:MacBook-Pro:DWARF niushu$ atos -arch arm64 -o MyApp -l 0x0000000102728000,
回车后继续输入0x0000000103ef6970(虚拟内存地址),然后你就会神奇的发现终端会输入崩溃的方法了