Symbolicating iPhone App Crash Reports

后端 未结 25 2494
迷失自我
迷失自我 2020-11-21 05:38

I\'m looking to try and symbolicate my iPhone app\'s crash reports.

I retrieved the crash reports from iTunes Connect. I have the application binary that I submitted

25条回答
  •  执笔经年
    2020-11-21 05:54

    I got a bit grumpy about the fact nothing here seems to "just work" so I did some investigating and the result is:

    Set up: QuincyKit back end that receives reports. No symbolication set up as I couldn't even begin to figure out what they were suggesting I do to make it work.

    The fix: download crash reports from the server online. They're called 'crash' and by default go into the ~/Downloads/ folder. With that in mind, this script will "do the right thing" and the crash reports will go into Xcode (Organizer, device logs) and symbolication will be done.

    The script:

    #!/bin/bash
    # Copy crash reports so that they appear in device logs in Organizer in Xcode
    
    if [ ! -e ~/Downloads/crash ]; then 
       echo "Download a crash report and save it as $HOME/Downloads/crash before running this script."
       exit 1
    fi
    
    cd ~/Library/Logs/CrashReporter/MobileDevice/
    mkdir -p actx # add crash report to xcode abbreviated
    cd actx
    
    datestr=`date "+%Y-%m-%d-%H%M%S"`
    
    mv ~/Downloads/crash "actx-app_"$datestr"_actx.crash"
    

    Things can be automated to where you can drag and drop in Xcode Organizer by doing two things if you do use QuincyKit/PLCR.

    Firstly, you have to edit the remote script admin/actionapi.php ~line 202. It doesn't seem to get the timestamp right, so the file ends up with the name 'crash' which Xcode doesn't recognize (it wants something dot crash):

    header('Content-Disposition: attachment; filename="crash'.$timestamp.'.crash"');
    

    Secondly, in the iOS side in QuincyKit BWCrashReportTextFormatter.m ~line 176, change @"[TODO]" to @"TODO" to get around the bad characters.

提交回复
热议问题