Как символизировать журналы сбоев / ошибок из iOS-проекта Xamarin Forms?

Мне нужно обозначить некоторые журналы сбоев, и для этого я прочитал, что мне нужны файлы.app и.dSYM вместе с файлами.crash.

Я не могу найти файл.app нигде. У меня есть файл.app.dSYM и файл.crash, но я не могу найти файл.app.

Я также вижу свои журналы ошибок на Xcode Organizer. Но строки из моего приложения не символизированы. И если я нажму на стрелку, чтобы открыть с проектом, я понятия не имею, какой файл открыть.

Спасибо

1 ответ

Решение

Когда вы создаете свой проект iOS, вы должны иметь .app файл в bin/iPhone/Release каталог. Или, если у вас есть .ipa файл, вы можете извлечь.app из этого с. Вы можете переименовать файл, чтобы иметь .zip и извлечь. .app будет в папке Payload. В Windows это может немного сбивать с толку, потому что значок может выглядеть как папка или каталог. Проверьте расширение файла. На Mac он должен распознавать .app и это может не показать расширение вообще. Вместо этого это выглядит так:

Важное замечание: Вам нужно использовать тот же файл.app, который сгенерировал отчет о сбое. Это означает, что вам придется использовать.app из пакета, который вы установили на устройстве, сгенерировавшем отчет о сбое. Надеюсь, вы это заархивировали или где-то сохранили. Простая перестройка проекта для получения нового.app не будет совпадать с файлом.crash во время символизации и не будет работать. Если у вас нет доступа к этому, вам нужно будет опубликовать снова, и на этот раз сохраните.app в следующий раз, когда вы получите.crash для анализа.

Чтобы символизировать вручную, у меня есть запись в блоге об этом здесь. Подводя итог, вот шаги:

Создать псевдоним

Откройте терминал и выполните одну из следующих команд для вашей версии Xcode:

Xcode 7.X
alias symbolicate="/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versi‌​ons/A/Resources/symbolicatecrash -v"  

Это просто упрощает использование инструмента symbolicatecrash, связывая его с командой symbolicate, поэтому нам не нужно переходить в этот каталог для запуска команды.

Обновите каталог разработчика

Запустите эту команду:

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

Symbolicate

Снова откройте терминал и перейдите в каталог, куда вы поместили свои файлы на шаге выше. Запустить symbolicate Команда, которую мы использовали ранее с вашими файлами.crash и.app в качестве таких параметров:

symbolicate -o "symbolicatedCrash.txt" "MyAppName 2-12-14, 9-44 PM.crash" "MyAppName.app"

Это будет символизировать файл сбоя и выложит результат в новый файл с именем "symbolicatedCrash.txt". Убедитесь, что исправили имена файлов из моего примера, чтобы они соответствовали вашим.

Другие вопросы по тегам