iOS- 全方位解析.crash檔案崩潰報告,

來源:互聯網
上載者:User

iOS- 全方位解析.crash檔案崩潰報告,
1.前言  想來每個iOS攻城獅,都免不了要接觸.crash檔案那麼什麼是.crash檔案?iOS app的所有崩潰記錄都會記錄在裝置上,所以對於和我一樣沒有整合讓使用者發送崩潰報告功能的iOS開發人員來說,要獲得crash檔案就必須先連上崩潰過的機器,然後從崩潰過的機器上匯出.crash檔案 2.如何解析.crash檔案  我們先看一眼匯出來的.crash檔案,重點看下崩潰部分的記錄如顯然從這圖裡,我們沒法定位出具體的錯誤,和崩潰的具體行數。我們得到是個二進位的報告,這時候我們需要對它進行反編譯。對.crash檔案進行反編譯我們需要用到三個檔案,缺一不可 2.1.找到發布app時的.ipa檔案(就是你打包app上傳到商店裡的那個檔案)  2.2.找到Archive時產生的.dSYM檔案  Show in Finder後對檔案夾中的這個.xcarchive檔案右鍵,顯示包內容,就可以看到一個名為dSYMs的檔案夾,把裡面的.dSYM檔案拷出來 2.3.將.ipa、.crash、.dSYMs 檔案放在同一個檔案夾(例如:建立一個bugcrash檔案夾)  2.4.開啟你的xcode,然後開啟你發布時的代碼(記住必須保證是你發布時的代碼,如果不是的話,可能會出現指向的崩潰行數有誤,或者無法解析出來的問題)   3.利用xcode內建re-symbolicate解析崩潰報告   點擊Devices進去  然後點擊View Device Logs 進去    現在開啟bugcrash檔案夾,然後把.crash檔案拖入右框中然後選中右鍵re-symbolicate log進行解析大約1-10秒中之後,我們就能發現之前的位元變成了我們想要看到的具體行數和具體的.crash原因.  4.如果xocde內建的Re-symbolicate仍無法解析,那麼我們需要利用symbolicatecrash藉助命令列手動解析  symbolicatecrash是一個隱藏工具,它在我的Mac中的具體路徑如下(Xcode6.1.app請換成你的Xcode名稱)/Applications/Xcode6.1.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash把這個路徑拷貝一下,然後粘到Finder的“前往檔案夾”下,前往,就可以看到symbolicatecrash工具了,現在把它也拷到案頭的crash檔案夾裡。至此,crash檔案夾裡現在有4個檔案了,分別是.app, .crash, .dSYM, symbolicatecrash。接下來就是用終端敲命令,產生更易分析的crash。

./symbolicatecrash /Users/xxxx/Desktop/bugcrash/InOrder.crash /Users/xxxx/Desktop/bugcrash/InOrder.app.dSYM > Control_symbol.crash
上述命令中,"xxxx"和"InOrder"請自行替換成對應的名稱。運行,這時候終端可能會報錯Error: "DEVELOPER_DIR" is not defined at /usr/local/bin/symbolicatecrash line 53. 這時候在終端中再輸入如下(Xcode6.1.app依然是要替換成實際名稱)然後再跑一下剛剛的那個命令,這時候看一下案頭的crash檔案夾下就會多出一個名為“Control_symbol.crash”的檔案,我們開啟看一下。和剛剛一樣。 如果還有什麼不明白歡迎在下面留言,有時間的我回一一回複,謝謝大家。  作者: 清澈Saup
出處: http://www.cnblogs.com/qingche/
本文著作權歸作者和部落格園共有,歡迎轉載,但必須保留此段聲明,且在文章頁面明顯位置給出原文串連。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.