導(dǎo)讀
準(zhǔn)備
- MAC電腦一臺
- Xcode
- 文件(crash文件皿哨、dSYM文件)
步驟
1>首先按照iOS之解析審核Crash Log方式(一)中將文件準(zhǔn)備好证膨,放在一個文件目錄下鼓黔,包括:crash文件、dSYM文件
2>手機連接電腦崔步,打開Xcode,然后找到Devices刷晋,當(dāng)然Xcode9 Beta改了一下名字慎陵,截圖如下(Xcode9之前只有Devices):
3>進(jìn)入后找到選中自己的手機席纽,然后找到View Device Logs,以下為Xcode9 Beta版本的樣式过牙,之前的也大致一樣:
4>然后就能看到相應(yīng)的手機里面的log日志了,包括crash文件如圖:
5>我們現(xiàn)在需要把審核時蘋果丟給我們的crash文件導(dǎo)入到手機中刀疙,直接選中crash文件拖入到第4步當(dāng)中的框中谦秧,不管是This Device 還是All Logs都可以撵溃,如下:
6>選中此crash文件然后右鍵選擇Re-Symbolicate Log然后等待解析
7>不多一會兒你就能看到解析之后的效果了缘挑。
注意點
1>我的解析出來是有一部分沒有解析完全的语淘,單單有幾行是解析不出來的,如下對比圖:
首先我介紹一下此項目Crash產(chǎn)生背景:
我在提交審核的之前是沒有任何問題的焕窝,也測試了,但是呢提交到蘋果審核時巴帮,蘋果說一運行就崩潰了,然后就給了個Crash文件垃沦,解析之后發(fā)現(xiàn)關(guān)鍵的部分沒有解析出來用押。并且我的項目名是中文的,打黑影處也是中文的池充,不像我的示例中是英文的缎讼。
問題解決:
①可能是中文問題,后續(xù)把項目改成英文
②因為我們不能重現(xiàn)問題卧惜,所以有一個思路提供下,就是我們利用TestFlight來模擬審核環(huán)境咽瓷,另外針對于部分不能解析的問題,我想在項目中集成Bugly闪朱,然后通過TestFlight測試產(chǎn)生Crash匈睁,然后查看Bugly的后臺解析結(jié)果,如果沒有問題的話然后直接用測試過的TestFlight版本提交審核胀蛮。
此處貼上兩個鏈接:
騰訊Bugly
iOS之使用TestFlight進(jìn)行App構(gòu)建版本測試
2>我在解析的過程中其實并沒有把這倆文件放在一個目錄下也可以粪狼,我在想是不是在解析的時候會自動在MAC上搜索相關(guān)的dSYM文件呢任岸?這個有待查證。
參考
1>產(chǎn)生Crash的原因和抓取Crash的方式
ios crash的原因與抓取crash日志的方法
2>代碼產(chǎn)生崩潰的諸多原因以及解決辦法,比較全面
iOS崩潰crash大解析