之前在提交新版本的時候,appl審核團隊給了一個crashlogxxx.txt的日志,但是只看這個原始日志沒辦法定位到具體崩潰在哪一部分的代碼,這里分享一下將原始的crashlogxxx.txt轉變成符號化的crashlog以方便定位問題。
1.下載原始的crashlogxxx.txt改后綴為crashlogxxx.crash,在Organizer中找到對應app的包文件xxx.xcarchive,右鍵顯示包內容,拷貝dSYMs文件夾下的xxx.app.dSYM,將crashlogxxx.crash和xxx.app.dSYM放在同一個文件夾內(方便在終端中操作,不然還要寫一大堆路徑)
2.Finder->應用程序->Xcode.app->顯示包內容->SharedFrameworks文件夾內->DVTFoundation.framework->Versions->A->Resources->symbolicatecrash,拷貝這個symbolicatecrash可執行文件至crashlogxxx.crash和xxx.app.dSYM同一文件夾內
3.終端cd到該文件夾目錄下,./symbolicatecrash ./crashlogxxx.crash ./xxxx.app.dSYM > name(隨便取).crash
4.如果執行第3步報錯:Error: "DEVELOPER_DIR" is not defined at /usr/local/bin/symbolicatecrash line xx.",終端輸入export DEVELOPER_DIR=/Applications/XCode.app/Contents/Developer,再執行第3步就應該可以生成符號化的crash日志了,這樣就能定位出錯代碼了。