xcodearchivesymbolicatedsymxcarchive

How does Xcode find the dSYM to match a crash file?


I received a .crash file from a customer and need to link it to the correct dSYM file. The archive for this product/version was built by another developer using Xcode, and the .xcarchive file put into git for a rainy day (like today).

After reading Analyzing Crash Reports and Understanding and Analyzing iOS Application Crash Reports it isn't clear how this works.

I have done the following:

I'm not convinced this is working, and may be linked to the wrong thing.

Q: How does Xcode know about my xcarchive file that contains the dSYM for the version of the crash file? (I would expect it to have to be in the Organizer/Archives list, but isn't)

Q: Is there a better way to import the .crash file? (I would expect to be able to drag it into Organizer/Crashes, but apparently not)


Solution

  • I'm not 100% certain, but I think Xcode uses Spotlight to find the correct dsym file, so it shouldn't matter where it is on your disk.

    I think it runs this command:

    mdfind "com_apple_xcode_dsym_uuids == <UUID>"
    

    You can also run this to list all dsym files Xcode can find at the moment:

    mdfind "com_apple_xcode_dsym_uuids == *"
    

    (Taken from this answer)