iOS 中崩潰 .crash文件符號(hào)化解析(使用Xcode自帶工具symbolicatecrash)

想要解析.crash文件,必須需要產(chǎn)生改崩潰日志包的.ipa文件和.app.dSYM文件
當(dāng)然首先我們需要找到我們的解析工具symbolicatecrash

一 找出symbolicatecrash工具

使用

find /Applications/Xcode.app -name symbolicatecrash -type f

查找的路徑中有如下一個(gè)路徑

/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash

使用Finder(訪達(dá))前往文件夾前往該文件夾處,拷貝出symbolicatecrash工具放入一個(gè)新建的文件夾中(例如crash)

二 找出.app文件和.app.dSYM文件

打開(kāi)Xcode->Window->Organizer找到Archives找到App->右擊Show in Finder
右擊XXXXX.xcarchive文件 顯示包內(nèi)容 可看到如圖內(nèi)容


Snip20171221_1.png

在dSYMs文件夾中找到對(duì)應(yīng)的XXX.app.dSYM文件,在Products下的Applications目錄下的如圖文件


Snip20171221_2.png

和.crash 文件一起放入crash目錄下
crash目錄結(jié)構(gòu)如圖
Snip20171221_4.png

三 執(zhí)行symbolicatecrash

首先進(jìn)入到crash目錄結(jié)構(gòu)
執(zhí)行

./symbolicatecrash XXX.crash XXX.app.dSYM > jieguo.crash
其中XXX為工程的名稱 jieguo.crash 為解析后產(chǎn)生的文件

如果報(bào)錯(cuò) Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69. 需要 執(zhí)行命令

export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"

然后重新 輸入命令

./symbolicatecrash XXX.crash XXX.app.dSYM > jieguo.crash

執(zhí)行完成后如圖
Snip20171221_5.png

打開(kāi)jieguo.crash文件,你就可以定位崩潰信息了。

四 注意點(diǎn)

需要注意的事.app.dSYM文件和app文件和.crash文件必須是同一次打包產(chǎn)生的。
驗(yàn)證是否為同一包產(chǎn)生可以根據(jù)各文件的uuid是否一致
查看 XXX.app 文件的 UUID,終端中輸入命令 (其中XXX為項(xiàng)目名)

dwarfdump --uuid XXX.app/XXX 

查看XXX.app.dSYM 文件的 UUID ,在 終端 中輸入命令

dwarfdump --uuid XXX.app.dSYM

查看.crash文件的uuid
打開(kāi).crash 查找Binary Images:
如圖框內(nèi)就是該文件的uuid


Snip20171221_6.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容