iOS開發(fā)——解析崩潰日志

在實(shí)際的開發(fā)過程中,作為開發(fā)者的我們常常會(huì)碰到一種場(chǎng)景,那就是真機(jī)調(diào)試時(shí)崩潰了,而有時(shí)又不能在Xcode中打印出崩潰信息,那么這時(shí)候我們就必須要獲取到崩潰原因,從而解決問題。

而在萬能的Xcode中,你可以找到自己測(cè)試機(jī)里的崩潰日志。Window -> Devices -> 選中自己的測(cè)試機(jī) View Device Logs ,類似下圖

而此時(shí)你可以選擇導(dǎo)出自己的崩潰日志,并且這里的我們看到的崩潰日志,都是Xcode已經(jīng)幫我們符號(hào)化的,很清晰的就可以看到崩潰原因,以及崩潰的位置。

如果是其他用戶,下載了我們的App之后出現(xiàn)了崩潰,我們可以從iTunes Connect中獲取到其他用戶的崩潰日志,但是這時(shí)如果你去看他人的崩潰日志,不出意外您是懵逼的。這是崩潰日志么? 天書還差不多。而如何把他人的崩潰日志符號(hào)化呢? 這就是我們接下來要講的內(nèi)容了。

依舊是萬能的Xcode給我們提供了一個(gè)工具 —— symbolicatecrash,這是一個(gè)Xcode自帶的分析工具,可以通過機(jī)器上的崩潰日志和應(yīng)用的.dSYM文件定位發(fā)生崩潰的位置,把Crash日志中的一堆地址替換成代碼相應(yīng)的位置。

如何使用symbolicatecrash分析崩潰日志

  1. 在你的桌面創(chuàng)建一個(gè)新文件夾,并且命名為"CrashReport"

  2. 打開終端輸入 find /Applications/Xcode.app -name symbolicatecrash -type f,然后終端會(huì)返回這個(gè)文件的路徑,只要找到symbolicatecrash文件, 復(fù)制然后粘貼到剛才創(chuàng)建的 "CrashReport" 文件夾里面.

  3. Xcode Archive的二進(jìn)制文件中找到.dSYM文件和.app文件拷貝到剛才創(chuàng)建的 CrashReport 文件夾里面.

  4. 打開終端進(jìn)入CrashReport文件夾,依次輸入以下命令行:

  • cd /Users/username/Desktop/CrashReport

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

  • ./symbolicatecrash ./*.crash ./*.app.dSYM > symbol.crash

這時(shí)候終端將會(huì)進(jìn)行處理......
處理結(jié)果是生成一個(gè)新的文件symbol.crash。然后打開這個(gè)文件。
你就會(huì)看到日志跟我們調(diào)試APP的控制臺(tái)輸出的內(nèi)容一樣了!

天書變成了可以看懂的崩潰記錄,攻城獅們,趕緊改Bug吧。

不知不覺博客更新了一年了,2017的第一篇日志,希望大家新年無Bug。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容