Как символизировать отчет о сбое от Apple, полученный в формате .txt, а не в формате .crash

Apple отклонила мое приложение, и я получил отчеты о сбоях в формате .txt вместо формата .crash.

Как я могу символизировать или прочитать отчет о сбое?


person bably    schedule 08.11.2016    source источник
comment
То же самое здесь, все другие сообщения SO говорят о файлах .crash. Кажется, я не могу перетащить файл журнала сбоев .txt, предоставленный iTunes Connect, в консоль «Просмотр журналов устройств» в Xcode ... @bably, вы когда-нибудь находили ответ?   -  person alexisSchreier    schedule 19.01.2017
comment
@alexisSchreier просто вручную измените расширение .txt на .crash, а затем сохраните файл. Затем файл .txt преобразуется в .crash, и вы можете продолжить чтение отчета о сбое. Надеюсь это поможет.   -  person bably    schedule 21.01.2017
comment
Спасибо за совет. Я попробовал это, но Xcode по-прежнему не будет автоматически символизировать файл, поэтому мне пришлось сделать это вручную с помощью команды atos, следуя руководству Apple. Это работает, просто нужно время, чтобы сделать это построчно... developer.apple.com/library/content/technotes/tn2151/   -  person alexisSchreier    schedule 23.01.2017


Ответы (5)


Когда вы получите отчет о сбое в виде файла .txt, выполните следующие действия:

  1. Измените расширение файла с .txt на .crash (например, с mycrash.txt на mycrash.crash).

  2. Создайте новую папку на рабочем столе и скопируйте файл mycrash.crash во вновь созданную папку.

  3. Скопируйте файл .dSYM:

    • update: download all DSYMs from appstoreconnect activity- they are properly named with their UUIDs
    • Разархивируйте файлы DSYM, затем скопируйте сценарий приложения и Sybolicate, как указано ниже: https://appstoreconnect.apple.com/WebObjects/iTunesConnect.woa/ra/ng/app/[appID]/activity/ios/builds/[version]/[build]/details
  4. Откройте окно «Архивы» в Xcode, перемещаясь по меню: xcode -> window -> orgnizer или xcode -> product -> Archive:

    • Выберите любой архив вашего приложения. Щелкните его правой кнопкой мыши и выберите Показать в Finder.

    • Щелкните правой кнопкой мыши appname.xcarchive и выберите Показать содержимое пакета.

    • Откройте папку dSYMs и получите файл .dSYM, а также вставьте его во вновь созданную папку.

    • Скопируйте файл .app из того же xcarchive в новую папку.

  5. Перейти к пути /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/

    • Finder hotkey (⇧ + ⌘ + G) and just paste in the path.
  6. Скопируйте файл symbolicatecrash во вновь созданную папку.

    The folder should now have:
    • mycrash.crash
    • мое приложение.приложение
    • myapp.app.dSYM
    • символическая авария
  7. Откройте терминал, перейдите к пути к папке и запустите:
    $ export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"

  8. Затем запустите команду symbolicate при сбое следующим образом:
    $ ./symbolicatecrash mycrash.crash > symbolicated.crash

person Shakti    schedule 20.07.2017
comment
при просмотре «показать содержимое пакета» нигде нет файла .app. - person Ronald; 17.11.2019
comment
Пункты 3 и 4 сбивают с толку. Почему мы читаем dSYM из двух мест? - person Martin Berger; 28.12.2019
comment
Причина в том, что некоторые приложения включают биткод, а некоторые нет. Это должно быть объяснено в ответе. Если ваше приложение содержит битовый код, Apple перестроит его перед отправкой клиентам. При перестроении изменяются dSYM, поэтому в таких случаях вам необходимо загрузить самые последние версии, прежде чем продолжить. - person yspreen; 14.08.2020
comment
Я получил No symbolic information found - person fullmoon; 10.02.2021

  1. Измените расширение файла .txt на .crash.
  2. Убедитесь, что ваше устройство подключено.
  3. Перейдите в xcode -> окно -> устройства и симуляторы -> просмотрите журналы устройств.
  4. Перетащите файл журнала сбоев и перетащите его в левую часть этого окна.
  5. Теперь вы можете посмотреть лог и что там происходит.
person yoc    schedule 05.11.2018
comment
убедитесь, что у вас подключено устройство, чтобы получить возможность просматривать журналы устройств; это было намного проще, чем принятый ответ, хотя - person gadu; 11.06.2019
comment
это не символично - person mcatach; 20.05.2020

Не могу добавить комментарий к ответу Шакти, но у меня возникли проблемы с шагами 5 и 6, поскольку он жаловался на то, что DEVELOPER_DIR не указан.

Немного погуглив позже, я узнал, что часть 5 должна была быть:

5 теперь откройте терминал cd путь к вашей папке, а затем введите это

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

Таким образом, «экспорт» также является ключевым словом и частью команды на случай, если у кого-то еще возникнет такая же проблема.

person DarkoB    schedule 06.02.2018

У меня сработало, может еще кому поможет

Apple предоставляет вам журнал сбоев в формате .txt, который не имеет символов.

**

При подключенном устройстве

**

  • Download ".txt" file , change extension to ".crash" enter image description here
    • Open devices and simulators from window tab in Xcode
    • выберите устройство и выберите журналы устройств
    • перетащите файл .crash в окно журнала устройства

введите здесь описание изображения

Там мы сможем увидеть символические журналы сбоев.

См. ссылку для получения более подробной информации о символизации журналов сбоев.

person Suraj K Thomas    schedule 16.12.2019
comment
Не работает. Это простое решение и должно работать, но оно не работает. - person Martin Berger; 28.12.2019
comment
Убедитесь, что вы используете тот же iPad, что и для разработки. Удивительно, но это сработало для меня. Если кто-то борется с символизацией журналов, он может попробовать этот метод. - person Suraj K Thomas; 30.12.2019
comment
Я следовал тому же решению, и я могу найти имена контроллеров представления исходного кода и имена методов вместо шестнадцатеричных кодов. Спасибо за решение. - person SURESH SANKE; 07.08.2020

Перетаскивание файла .crash в органайзере не полностью символизировало мой сбой. Поэтому я попробовал другой способ сделать это.

Если заархивированные сборки уже есть на вашем компьютере. Тогда вам не нужно давать .app и dsym файл. Просто запустите приведенные ниже команды в терминале.

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

Нажмите Enter

    /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash /Your/Crash/File/Path/c.crash > /Your/Symbolicated/Crash/File/Path/c.crash

Нажмите Enter и проверьте путь, который вы указали.

person user1039695    schedule 21.05.2020