iOS crash文件解析 DSYM文件解析 崩潰解析

參考文章 https://juejin.cn/post/6844903598011187213

自動(dòng)化腳本,保證dsym和crash文件在一個(gè)目錄下即可。


export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer

symbolToolPath="./symbolicatecrash"
crashPath=""
dSYMPath=""

if [ ! -f "$symbolToolPath" ]
then
    symbolToolPath="/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash"
    echo "symbolicatecrash工具的路徑是為:"$symbolToolPath
    if [ -f "$symbolToolPath" ]
    then 
        echo "symbolicatecrash工具存在(文件為普通文件)"
    else
        echo "無(wú)法找到symbolicatecrash工具"
    fi
fi

function findFile(){
    crashPath=$(find . -name "*.crash")
}

if [ -n "$1" ]
then
    crashPath=$1
    echo "已傳入crash文件路徑:$crashPath"
else
    findFile
    echo "搜索同級(jí)目錄下crash文件...."
fi

if [ ! -f "$crashPath" ]
then
    echo "搜索失敗,無(wú)法找到crash文件"
    exit
else
    echo "【搜索成功】找到的Crash路徑:$crashPath"
fi

dSYMPath=$(find . -name "*.dSYM" -print)
echo "【搜索成功】找到的符號(hào)表路徑:$dSYMPath"

if [ ! -d $dSYMPath ]
then
    echo "無(wú)法找到符號(hào)表dSYM文件"
    exit
fi

#找crashPath的UUID
crashContent=$(cat $crashPath)
crashUuid=$(echo "$crashContent" | grep -o 'UUID:\s\+\w\+-\w\+-\w\+-\w\+-\w\+')
crashUuid=$(echo "$crashUuid" | sed 's/^UUID:[[:space:]]*//')

#找dsym的UUID
dsymContent=$(dwarfdump --uuid $dSYMPath)
dsymUuid=$(echo "$dsymContent" | grep -o 'UUID:\s\+\w\+-\w\+-\w\+-\w\+-\w\+')
dsymUuid=$(echo "$dsymUuid" | sed 's/^UUID:[[:space:]]*//')

if [ "$crashUuid" = "$dsymUuid" ]
then
  echo "兩個(gè)文件的UUID相等,可以正常解析"
else
  echo "dSYM UUID:$dsymUuid"
  echo "Crash UUID:$crashUuid"
  echo "Warning:??兩個(gè)UUID不相等"
fi


# ./symbolicatecrash ./*.crash ./*.app.dSYM > symbol.crash
"$symbolToolPath" $crashPath $dSYMPath > symbol.log

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容