我們的應(yīng)用通常充斥著崩潰姚建,為了方便尋找導(dǎo)致崩潰的原因止状,蘋果為我們提供了崩潰報告,每個安裝了應(yīng)用的手機阳仔,在崩潰時都會產(chǎn)生一個報告忧陪,我們可以利用合格報告推斷出導(dǎo)致崩潰的原因。
我們可以用Xcode通過以下方式獲取崩潰報告:
1、手機的所有崩潰日志:Xcode->Window->Devices and Simulators->View Device Logs
2嘶摊、針對發(fā)布App Store的應(yīng)用:Xcode->Window->Organizer->Crash,需要用戶同意發(fā)送錯誤報告給蘋果開發(fā)者才可以看到這些Crash報告延蟹,而對于TestFlight則默認(rèn)支持這個。
3叶堆、App自己收集的crash
一阱飘、在桌面創(chuàng)建一個crash文件夾
我們打了release包后,會生成一個二進(jìn)制文件虱颗,調(diào)試符號會存儲在dsym文件中沥匈,我們要做的就是將dsym文件下載下來。有以下幾個方式獲取dsym文件上枕。
1.Xcoe-Window-Organize找到Archives找到App-右擊-Show in Finder
2.復(fù)制.app和.app.dSYM到crash夾文件:右擊..xcarchive文件-顯示包內(nèi)容
二咐熙、首先找到symbolicatecrash工具存放的地址1.打開終端輸入以下命令:find /Applications/Xcode.app -name symbolicatecrash -type f你會找到:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/./symbolicatecrash
2.用命令將symbolicatecrash拷貝到桌面的crash文件夾里面,與.app和.app.dSYM放一起cp /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash /Users/angel/Desktop/crash
3.將Crash文件也拷到當(dāng)前文件夾里面
三辨萍、執(zhí)行symbolicatecrash1.打開終端用命令切換到桌面的crash目錄下:cd /Users/你的電腦名稱/Desktop/crash
2.執(zhí)行命令./symbolicatecrash /Users/angelseahappiness/Desktop/crash/Control_2014-01-13-111838_Lynns-iPad3.crash /Users/angel/Desktop/crash/Control.app.dSYM > Control_symbol.crash這時候終端有可能會出現(xiàn):Error: "DEVELOPER_DIR" is not defined at ./symbolicatecrash line 60.3.輸入命令:export DEVELOPER_DIR="/Applications/XCode.app/Contents/Developer"
4.再執(zhí)行./symbolicatecrash /Users/angelseahappiness/Desktop/crash/Control_2014-01-13-111838_Lynns-iPad3.crash /Users/angel/Desktop/crash/Control.app.dSYM > Control_symbol.crash這時候終端將會進(jìn)行處理了
5.將終端完成以后棋恼,在crash文件夾里面會多出一個文件Control_symbol.crash:這個就是最終的文件,可以查看bug所在的