平時(shí)我們拿到一份崩潰日志耗跛,需要解析芍锦,一般操作是取到對(duì)應(yīng)的 dSYM 和對(duì)應(yīng)的二進(jìn)制文件,然后拿到相應(yīng)的崩潰日志 uuid 剧包、二進(jìn)制的 uuid、dSYM 的 uuid 通過(guò)命令行來(lái)解析雇毫。這些操作感覺(jué)比較耗時(shí)玄捕。下面介紹幾種情況下的快速解析的方法:
- 1、自己設(shè)備上 Xcode 編譯的包發(fā)生閃退:連上手機(jī)打開(kāi) Xcode棚放,cmd+shift+2 呼出 Device 的 Window枚粘,如圖1所示,然后點(diǎn)擊 View Device Logs飘蚯,然后選中對(duì)應(yīng)時(shí)間段自己 app 的崩潰日志馍迄。如果此時(shí)對(duì)應(yīng)的調(diào)用棧還沒(méi)有符號(hào)化,可以選中日志后右鍵如圖2所示 Re-Symbolicate Log 即可局骤。
2攀圈、如果是打包服務(wù)器或者 Appstore 的包發(fā)生閃退:拷貝對(duì)應(yīng)的包和 dSYM 到任意文件夾下,注意將 dSYM 解壓以及 .ipa 里面的 .app 取出峦甩。然后按照情況1的方式處理即可赘来,Xcode 會(huì)自動(dòng)索引二進(jìn)制及 dSYM。
3凯傲、如果拿到別的設(shè)備導(dǎo)出的未符號(hào)化的崩潰日志犬辰,可以將日志拖至圖2所示的列表中,注意此時(shí)上面 tab 記得選 All Logs 而不是 This Device冰单,然后參考情況2幌缝,找到崩潰日志對(duì)應(yīng)的二進(jìn)制包和 dSYM 文件,按照情況2處理即可诫欠『眩可能會(huì)遇到系統(tǒng)庫(kù)的一些方法無(wú)法符號(hào)化的問(wèn)題浴栽,只需要找到對(duì)應(yīng)的設(shè)備連上電腦,讓 Xcode 讀取一遍該設(shè)備(同機(jī)型和系統(tǒng)版本的也可以)的符號(hào)表轿偎,然后再 Re-Symbolicate 一遍就行典鸡。
4、遇到線上用戶(hù)崩潰贴硫,無(wú)法拿到完整崩潰日志椿每,可以讓用戶(hù)到【設(shè)置->分析->分析數(shù)據(jù)】里面找到對(duì)應(yīng)時(shí)間點(diǎn)的崩潰日志,然后截圖英遭,根據(jù)一個(gè)開(kāi)源工具 dSYMTools,把崩潰棧的關(guān)鍵地址輸入到文本框中即可解析出崩潰的那個(gè)方法亦渗,具體使用方法參考 ReadMe挖诸。