iOS 符号化崩溃日志

手动符号化需要下面3个东西

 
 

symbolicatecrash 是苹果官方提供的符号化工具。

首先,找到 symbolicatecrash,打开终端输入:
find /Applications/Xcode.app -name symbolicatecrash -type f
出现如下结果,路径可能不同
/Applications/Xcode.app/Contents/Developer/Platforms/WatchSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash
这里因为是手机,使用
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/PrivateFrameworks/DVTFoundation.framework/symbolicatecrash
 

dSYM 文件在打好的包中:

· 打开 Organizer 面板:Xcode > Window > Organizer
· 选择与崩溃日志版本对应的包,右键 Show In Finder
· 选择 xcarchive 文件,右键 显示包内容
· dSYM 文件就在 dSYMs 文件夹里
Xcode 默认打包时不创建 dSYM 文件,需要在 Build Settings 设置 Debug Information Format 为 DWARF with sSYM File(如下图),否则 dSYMs 文件夹是空的。
 
查看 dSYM 文件的 uuid,终端输入下面的命令
dwarfdump --uuid dSYM文件路径
 

崩溃日志:

从设备中获取(有时已经是完全符号化状态,可直接查看)
    1. 目标设备连接电脑 > 打开Xcode > Window > Devices (快捷键 shift + ⌘ + 2)
    2. 选择 View Devices Logs
    3. 在列表中选择文件,右键选导出
 
或者自己实现记录并上传
 

进行符号化:

在桌面创建文件夹,把 symbolicatecrash、崩溃日志和 dSYM 文件放进去
终端 cd 到创建的文件夹
执行命令
./symbolicatecrash XXXX/XXXX/appName.crash XXXX/XXXX/appName.app.dSYM > customName.crash
 
 

补充:

手动解析iOS crash文件时候,会出现这个报错
 
Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69.
 
输入下面的命令就可以了
 
export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"

猜你喜欢

转载自blog.csdn.net/qizd0802/article/details/103507353