Как Xcode находит dSYM, соответствующий файлу сбоев?
Я получил файл.crash от клиента, и мне нужно связать его с правильным файлом dSYM. Архив для этого продукта / версии был создан другим разработчиком с использованием Xcode, а файл.xcarchive помещен в git на черный день (как сегодня).
После прочтения " Анализ отчетов о сбоях" и " Понимание и анализ отчетов о сбоях приложений iOS" неясно, как это работает.
Я сделал следующее:
- откройте окно "Устройства", кнопку "Просмотр журналов устройства"
- перетащите файл.crash в список (мы перетаскиваем журнал сбоев с другого устройства / пользователя на наше устройство - это кажется неправильным, но AFAIK - это то, что нужно сделать)
- В Организаторе / Архивах архив нужной версии НЕ в моем списке. Он был построен на другом компьютере, и я еще ничего не сделал, чтобы перенести его в свою среду
- Первоначально, когда я просматривал файл сбоя, он просто имел шестнадцатеричные коды
- щелкните правой кнопкой мыши и "Re-Symbolicate" журнал сбоя, который я добавил ранее
- Каким-то образом Xcode теперь знает о моем архиве. Теперь я вижу информацию о методе и номере строки, но...
Я не уверен, что это работает, и может быть связано с неправильной вещью.
Q: Как Xcode узнает о моем файле xcarchive, который содержит dSYM для версии файла сбоев? (Я бы ожидал, что он должен быть в списке Организатор / Архивы, но это не так)
В: Есть ли лучший способ импортировать файл.crash? (Я ожидаю, что смогу перетащить его в Organizer/Crashes, но, видимо, нет)
1 ответ
Я не уверен на 100%, но я думаю, что Xcode использует Spotlight, чтобы найти правильный файл dsym, поэтому не должно иметь значения, где он находится на вашем диске.
Я думаю, что он запускает эту команду:
mdfind "com_apple_xcode_dsym_uuids == <UUID>"
Вы также можете запустить это, чтобы перечислить все dsym файлы, которые Xcode может найти в данный момент:
mdfind "com_apple_xcode_dsym_uuids == *"
(Взято из этого ответа)