最近提交一個工具應用到APPStore,一直因為crash被拒呐馆,大蘋果拒絕理由非常充分:你的應用使用的過程中有閃退現(xiàn)象挪圾,為了更好的幫助你定位問題,附上如下崩潰日志涂炎。瞬間蒙逼,就一個簡單的工具,幾個界面怎么會崩潰呢咧叭,自己跟測試都測過沒可能發(fā)現(xiàn)不了啊,點開crash日志窍蓝,瞬間石化缴挖,這貨長這樣!
查了一通不行要領,后來知道這東西可以處理成log日志涮坐,話不多說開干凄贩。
首先桌面建一個文件夾,以次放入以下四個文件,.dSYM文件袱讹,.app文件疲扎,.crash文件,symbolicatecrash捷雕。
.dSYM文件椒丧,.app文件搞定。
然后是.crash文件救巷,由于蘋果貼的附件是txt文件壶熏,直接把txt文件格式改成.crash就可以了,具體過程直接改文件名加上.crash,然后會有彈窗如圖:
右選就OK啦浦译。
當然.crash也可以通過xcode導出棒假,
選view Device Logs
最后就是symbolicatecrash文件了
首先打開終端,find /Applications/Xcode.app -name symbolicatecrash -type f 查找symbolicatecrash
選最后一個前往找到文件精盅,放入文件夾帽哑。
中間有一點,如果要確認.dSYM文件叹俏,.app文件妻枕,.crash文件是否匹配,可以能過終端打印uuid來確認。
命令為:
dwarfdump –uuid xxx.app/xxx
dwarfdump –uuid xxx.app.dSYM/ (xxx為app name)
.carsh文件的uuid打開可以直接找到佳头。
一切就緒鹰贵,開始轉(zhuǎn)換。
cd 到文件夾依次輸入命令:
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer
./symbolicatecrash a523.crash ECM-iphone.app > 1.log
注意文件名稱換成自己的名稱就可以啦康嘉,如果沒有報錯碉输,那么恭喜你成功生成log日志了。
如圖:
我那會執(zhí)行命令后悲催的報了一個 while reading /Users/fangliguo/Desktop/crash/xxx, No such file or directory : at ./symbolicatecrash line 909 的錯亭珍,死活都不成敷钾。后來查資料發(fā)現(xiàn)了這么一條終端命令:./symbolicatecrash ./.crash ./.app.dSYM>symbol.crash,nice真的好使肄梨。終于可以愉快的分析log日志了阻荒。
話不多說,直接找Last Exception Backtrace:
崩潰代碼方法及行數(shù)直接給你整出來了众羡。
我這邊的問題是因為阿里云推送在蘋果測試那邊獲取到的設備id是空侨赡,沒做非空驗證造成的。修改提交粱侣,大功搞成羊壹。非常happy,又掌握了一項新技能齐婴。