當我們軟件 release 模式打包或上線后,不會像我們在 Xcode 中那樣直觀的看到用崩潰的錯誤,這個時候我們就需要分析 crash report 文件了,
iOS 設備中會有日志文件保存我們每個應用出錯的函數內存地址,通過 Xcode 的 Organizer 可以將 iOS 設備中的 DeviceLog 導出成 crash 文件,
這個時候我們就可以通過出錯的函數地址去查詢 dSYM 文件中程序對應的函數名和文件名。
大前提是我們需要有軟件版本對應的 dSYM 文件,這也是為什么我們很有必要保存每個發布版本的 Archives 文件了。
1.0.3版下載:http://pan.baidu.com/s/1mg01Qha
Git: https://github.com/answer-huang/dSYMTools
用法
- 找到閃退的信息,圖中紅色為
內存地址
,綠色為Slide Address
,部分日志第三方也有直接標明Slide Address
項。
閃退信息
查找閃退信息可參考:
- 友盟錯誤分析
- 用 Xcode 從手機中導出.crash文件(內容如上圖)
-
將 dSYM 拉入窗口的第一部分,
雙擊 dSYM 名稱后,右邊顯示可選archive編譯類型,
UUID 是自動的,請對好類型,
根據閃退信息填入對應的內存地址和Slide Address,
點擊分析按鈕,就會顯示可能錯誤的地方了。
工具使用