1.在桌面創(chuàng)建一個crash文件夾
2.首先找到symbolicatecrash工具存放的地址(Xcode顯示包內(nèi)容亦可找到) 打開終端輸入指令:
find /applications/Xcode.app -name symbolicatecrash -type f
稍等片刻得到地址:/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash
3.用命令將symbolicatecrash拷貝到桌面的crash文件夾里 cp /Applications/Xcode.app/Contents/Developer/Platforms/iphoneOS.platform/Developer/Library/PRivateFrameworks/DTDeviceKitBase.framework/Versions/A/Resources /symbolicatecrash /Users/XXX/Desktop/crash
4.Xcode>Window>Organize在Archives找到上傳的App-右擊-Show in Finder 右擊后顯示包內(nèi)容 復(fù)制ProjectName.app和ProjectName.app.dSYM到crash文件夾里
5.校驗ProjectName.app、ProjectName.app.dSYM、crashLog.txt 的UUID是否一致
dwarfdump --uuid ProjectName.app/ProjectName
dwarfdump --uuid ProjectName.app.dSYM 崩潰日志的UUID 在 Binary Images: 下第一行 ProjectName arm64 后
6.終端輸入
./symbolicatecrash /Users/XXX/Desktop/crach/crashLog.txt /Users/XXX/Desktop/crach/ProjectName.app.dSYM > crashLogEnd.crash
出現(xiàn) Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69. 輸入 export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"
后再次輸入
./symbolicatecrash /Users/XXX/Desktop/crach/crashLog.txt /Users/XXX/Desktop/crach/ProjectName.app.dSYM > crashLogEnd.crash
最后可以根據(jù)crashLogEnd.crash詳細崩潰信息對程序進行修復(fù)
補充:Exception Type: 異常類型?Exception Codes: 異常出錯的代碼(常見代碼有以下幾種)?
0x8badf00d錯誤碼:Watchdog超時, 看門狗定時器超時導(dǎo)致 Ate Bad Food
0xbaaaaaad錯誤碼:用戶按住Home鍵和音量鍵,獲取當(dāng)前內(nèi)存狀態(tài),不代表崩潰。?
0xbad22222錯誤碼:VoIP應(yīng)用被干掉。?
0xc00010ff錯誤碼:太熱, “cool off”。?
0xdead10cc錯誤碼:在后臺時仍然占據(jù)系統(tǒng)資源(通訊錄)被干掉,意為“dead lock”。 0xdeadfa11錯誤碼:用戶強制退出,意為“dead fall”。Triggered by Thread: 在某一個線程出了問題導(dǎo)致crash,Thread 0 為主線程、其它的都為子線程?
Last Exception Backtrace: 最后異常回溯新聞熱點
疑難解答
圖片精選