通過友盟的錯誤崩潰日記分析查看線上應用的crash

應用在發布到商店后,線上的代碼我們是不能直接的操作了,這點并不想web那么方便。如果應用在線上出現了bug,你如程序crash了,我們該如何發現,并在下次升級時針對問題的根源做出解決呢?
線上



第一步:1、首先要找到上傳到appStore 的api文件:在xcode 導航欄的window -Organiaer (如圖:)


2、選中你提交審核的api包,右鍵Show in Finder;


Archive 打包的xcarchive 文件

3、就看見了你Archive的文件包,打開終端把文件拖入終端,會出現其路徑,然后在后面拼接“dSYMs”,然后cd 到拼接好的路徑下,'ls'查看內容會得到你的app名稱:“xxx.app.dSYM”

然后再把得到的“xxx.app.dSYM”(‘xxx’是你自己的項目名稱)拼接到之前的路徑后面,下面會用到!如圖:


獲得app項目名稱

第二部:1、我們要先找到在友盟的錯誤分析里的錯誤日志:


2、點擊一處錯地址(劃紅圈的)會顯示出一串命令:復制紅色下劃線的命令:

‘dwarfdump --arch=arm64 --lookup0x100020abc’

第三部:打開終端,把第二步 得到的命令和第一步得到的路徑 拼接起來,然后回車 :

就會出現下面一坨數據,包括報錯的類名,以及報錯的方法,還有定位到了具體哪一行:

注:要確保友盟中 dSYM UUID 與 “xcarchive”文件的UUID一致!否則啥都不會顯示!

如何查看‘xcarchive’文件的UUID ?

cd 到 xcarchive 文件下,然后用 ?‘dwarfdump?--uuid xxxx.app.dSYM’ 命令 就能看見 ?兩行UUID(xxxx是你自己的應用名)

對比友盟錯誤信息中的UUID,如果沒有與其對應的,那應該就是選擇的‘xcarchive’文件不對。

或者自己找到.xcarchive文件和錯誤內存地址(友盟錯誤詳情里標綠色的為錯誤內存地址)。然后通過一個小應用來分析出對應的函數。應用下載地址,具體可參考文章dSYM 文件分析工具

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容