Корректная настройка, чтобы XCode генерировал правильно символизированные журналы для устройств iOS - PullRequest
4 голосов
/ 05 октября 2010

Я выполняю тестирование на нескольких приложениях iOS для ряда устройств и версий iOS (iPhone, Touch, iPad, iOS 3.1.3, 4.0.2, 4.1).

У меня установлен Xcode v3.2.4, в первую очередь, чтобы я мог получать журналы и консольный вывод для прикрепления к ошибкам.

Недавно мы заметили, что мои символические журналы - это просто несимволические журналы с дополнительными пробелами, вставленными между существующими символами (поэтому «файл журнала» отображается как «l o g f i l e».

Один из инженеров в итоге дал мне сборку с .app и .dSYM, которую я скопировал на свой Mac локально и установил на устройство через XCode (обычно использую iPhone Config Util).

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

Чего мне не хватает? Что я настроил неправильно? Что я делаю не так?

Я понимаю, что это может быть большой вопрос, но я надеюсь, что нет, или, если это так, кто-то чувствует себя очень добрым и скучающим:)

Заранее спасибо за любую помощь.

1 Ответ

0 голосов
/ 26 июня 2012

Это всегда работает для меня, независимо от того, насколько нарушена автоматическая символика на машине:

  1. Скопируйте файл dSYM в место, где он определенно проиндексирован Spotlight (из опыта: не папка / tmp).Подпапка Home, Desktop или Documents является самым безопасным выбором.

  2. Вызовите mdimport, чтобы убедиться, что Spotlight проиндексировал папку, содержащую dSYM: mdimport /path/to/dSYM

  3. Вызовите symbolicatecrash (при условии, что у вас достаточно разумный X-код в приложениях): /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/symbolicatecrash /path/to/crashlog

Если это не сработает, запустите symbolicatecrash с -v (многословно)обычно довольно четко показывает, где находятся символы и почему они не найдены.

...