最近公司上線App居然被拒了塞栅,審核團(tuán)隊(duì)給的拒絕原因很簡(jiǎn)單者铜,直接甩給我三個(gè)crashlog文檔,下載下來打開看一臉懵逼放椰,這咋看作烟?由于是第一次遇到,找了找文檔學(xué)習(xí)砾医,在這里整理下:
正題:
要分析奔潰日志需要三個(gè)文件:crash日志如蚜,symbolicatecrash分析工具压恒,.dSYM符號(hào)集
1、在桌面上創(chuàng)建一個(gè)crash文件夾
2错邦、獲取崩潰日志探赫,并將crash日志進(jìn)行保存
將崩潰日志文件放入到桌面的crash文件夾中(如果不是審核被拒返回的崩潰日志文件,可以通過位置:Xcode->window->Devices and Simulators ->選中測(cè)試手機(jī)撬呢,點(diǎn)擊views Devices Logs伦吠,根據(jù)時(shí)間點(diǎn)找到你的崩潰日志,右鍵Export 到桌面 ‘后綴名為默認(rèn) .crash, 可任意命名’倾芝,再將這個(gè)crash文件放入桌面的crash文件夾)
3讨勤、找到Xcode的位置,右鍵"顯示包內(nèi)容"晨另,根據(jù)以下目錄找到symbolicatecrash工具潭千, 獲取路徑
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash
a. 打開Xcode刨晴,選擇Window-->Orgianzer找到對(duì)應(yīng)的Archive文件
b. 點(diǎn)擊右邊的Download dSYMS
c. 如果提示 No dSYMs were found for Version xxx Build xxx
d. 可以右鍵點(diǎn)擊對(duì)應(yīng)的Archive文件,show in finder屉来,然后右鍵顯示包內(nèi)容,找到dSYMs文件夾下的對(duì)應(yīng)dYSMs文件狈癞,拷貝到剛才的文件夾下
e .如果文件夾為空茄靠,那么就要去檢查Xcode設(shè)置,在Xcode --> Build Setting 搜索 "debug information format",將"DWARF"修改為"DWARF with dSYM File",之后重新打包就可以找到了
5. 打開終端蝶桶,進(jìn)入剛才的文件夾(cd 你自己的剛才創(chuàng)建的文件夾路徑)
cd /Users/xxx/desktop/crash
6. 接著輸入以下命令
/symbolicatecrash ./crash.txt ./MyAppName.app.dSYM > crash.log 注:crash.txt為蘋果返回的崩潰日志的名字慨绳,MyAppName.app.dSYM為你自己拷出來的dSYM文件的名字,crash.log為你要輸入的日志文件的名字
執(zhí)行命令之前的crash文件夾內(nèi)(上面三個(gè)txt格式的為蘋果返回的崩潰日志文件)
1真竖、臨時(shí)方法:配置環(huán)境變量 DEVELOPER_DIR
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
2脐雪、永久方法:編輯~/.bash_profile匹层,在末尾添加 #Add environment variable DEVELOPER_DIR
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developerexport PATH=PATH
然后保存文件寡具,使用source ~/.bash_profile命令或者完全退出終端來刷新環(huán)境變量
7. 然后重新輸入第6步的命令:/symbolicatecrash ./crash.txt ./MyAppName.app.dSYM > crash.log 。執(zhí)行命令之后(.crash文件為生成的日志文件)
8版姑、點(diǎn)擊打開crash文件夾中的.log文件讨韭,就一目了然崩潰的原因了