在使用symbolicatecrash去解析ios crash时,经常发现自己app的堆栈都解析了。但是系统的堆栈却仍是地址信息。如下图这种:
通过symbolicatecrash -v 参数我们可以看到命令执行的过程
从解析过程可以看到,命令会先从device support文件夹下寻找匹配的符号文件,如果没有会通过spotlight全局查找。
device support目录在/Users/用户名/Library/Developer/Xcode/iOS DeviceSupport 下,目录中是设备在连接电脑时导入的符号文件。所以在出现上面问题时,连上发生crash的设备导入符号文件后再解析就可以了。