Xcode自带工具symbolicatecrash解析Crash文件
項目中遇到一臺手機運行測試包閃退的現象,而且是一個設備閃退其他設備沒有再現的情況
可以看到Crash信息,但是指定的問題給出的是16進制內存地址,根本無法定位問題發生在哪個類的哪個函數中
所以需要解析這個Crash文件,好了,廢話就說這么多,以下是干貨~~~
?
文章講述如下5個問題:
一、如何獲取手機的Crash文件
二、使用symbolicatecrash解析Crash文件具備的條件
三、如何獲取以上三個文件
四、如何找到symbolicatecrash
五、如何使用symbolicatecrash
==============================我是分割線=============================================
?
一、如何獲取手機的Crash文件
1. 打開Xcode,連接上手機
2. 菜單中,Window->Devices,打開Devices窗口
3. 左側選中連接的手機,右側即可看到Crash信息,View Device Logs
Log類似這樣的:
二、使用symbolicatecrash解析Crash文件具備的條件
1. xxx.crash后綴名的文件
2. xxx.app.dSYM后綴名的文件
3. xxx.app文件
注:xxx為項目名稱
三、如何獲取以上三個文件
1. crash文件在第一步中已經說明,將內容保存在以【項目名.crash】為文件名的文件即可
2.后兩個文件一起獲得,可以通過Xcode獲取,也可以通過終端輸入命令行獲得:
? 通過Xcode獲取:
? ①Xcode->Window->Organizer,打開Archive窗口,找到App,點擊顯示菜單顯示Show In Finder?
?
②打開Archive文件夾,找到Archive文件->顯示包內容
? ?在dSYMs文件夾中找到.app.dSYM文件
? ?在Products->Applications文件夾中找到app文件
? ?然后將這三個文件放在一個文件夾下,以供后面使用
? 通過終端命令行找:
? ①打開終端,輸入cd ~先到根目錄
? ②然后輸入cd Library/Developer/Xcode/Archives/
? ③然后輸入open. 打開Archive文件夾,后面就和通過Xcode的步驟②是一樣的了
四、如何找到symbolicatecrash
?1. 終端中輸入如下命令行進行查找:
find /Applications/Xcode.app -name symbolicatecrash -type f?2. 根據查找結果,帶有iPhone路徑的,即可找到?symbolicatecrash
?3.?symbolicatecrash所在的文件夾,復制symbolicatecrash文件到之前放那三個文件的文件夾中
cd 復制查找的路徑到此處 open .?
?
============以上所有工作逐步就緒,以下如何使用symbolicatecrash命令===========
?
五、如何使用symbolicatecrash
? 1. 必須保證app文件,.app.dSYM及.crash文件的uuid一致才可解析成功
? 2. 終端輸入命令進入存放文件的文件夾,執行如下命令
dwarfdump --uuid xxx.app/YouXiIOSClient dwarfdump --uuid xxx.app.dSYM?3. 通過以上命令查看uuid,然后對比.crash文件第一行的Incident Identifier,看他們是否一致
? ? (我的情況是前兩個文件一致,肯定的,但是和.crash文件不一致,我的做法是把.crash文件的改成和他倆一致)
?4. 執行命令
./symbolicatecrash xxx.crash xxx.app.dSYM > xxx.log此時會出現報錯:
Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 69.再執行如下命令即可
export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"// 再次執行,即可完成crash文件解析 ./symbolicatecrash xxx.crash xxx.app.dSYM > xxx.log ?
?
?5. 此時打開xxx.log文件即可獲得如下結果,之前是16進制地址的地方,現在全部具體化了,哪個類文件的多少行代碼,哪個方法一目了然
? ? ?然后就可以根據項目的情況解析推斷閃退發生的原因了^_^
?
=======================最后來一張對比照片,看的更清晰==============================
?
??
轉載于:https://www.cnblogs.com/china-fanny/p/7610487.html
總結
以上是生活随笔為你收集整理的Xcode自带工具symbolicatecrash解析Crash文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kafka和flume进行整合的日志采集
- 下一篇: tomcat报错: Error pars