打開 window->Devices & Simulators
然後點擊View Device Logs
導出.crash
文件,一般都是混淆了的看不到明文的調用棧,需要符號化
找到Xcode
中symbolicatecrash
存放的目錄
find /Applications/Xcode.app -name symbolicatecrash -type f
編寫一個自動操作簡化這個流程
#外部傳入一個.crash文件路徑
filePath=$1
#echo ${filePath%/*} #文件所在目錄
#echo ${filePath%/*}/*.app.dSYM #文件所在目錄下的dsym文件
#echo ${filePath%/*}/_decode_symbols.crash #在文件所在目錄下生成的目標文件名
#指定環境變量
export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"
#找到命令行所在執行命令 源.crash + 本次編譯的.dsym => 目標.crash
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash ${filePath} ${filePath%/*}/*.app.dSYM > ${filePath%/*}/_decode_symbols.crash
提示No symbolic information found
說明.crash
和 .dSYM
文件的 uuid
沒有對應
dwarfdump --uuid xxx.app.dSYM
查看uuid