как отладить сборку дистрибутива - PullRequest
2 голосов
/ 29 июля 2011

Хорошо

Так что недавно у меня возникли большие проблемы с приложением, работающим в режиме отладки, но не работающим в режиме распространения.

Можно ли использовать средства отладки xcode, такие как точки останова и отслеживание переменных, со сборкой adhoc-дистрибутива приложения?

Если это не так, как обычно можно отладить такую ​​вещь?

Ответы [ 2 ]

1 голос
/ 29 июля 2011

Предполагая, что ваши журналы сбоев не дают вам никаких подсказок (вам нужно подключиться к устройству, чтобы получить их), есть много вещей, которые вы можете сделать.

Но я бы началпросматривая журналы сбоев ... подсказки найдутся, и не забудьте, что Apple сделает доступными журналы сбоев при распространении через iTunesConnect.

1) Обильное ведение журнала - это одно.Многие разработчики используют переключатель, чтобы при отладке журналы попадали на консоль, но для других сборок они отбрасывались.Рассмотрим другой вариант, когда вы вместо этого входите в файл.Затем вы можете отправить файлы журнала на удаленный сервер для отладки.Это все сложно, но как только вы это сделаете, вы удивитесь, как раньше жили без него.

2) Другой вариант - использовать Flurry и регистрировать события, когда выобнаружить, что все пошло не так.Это может охватывать более контролируемые проблемы, когда все происходит не так, как ожидалось, а не случайные сбои.Это может быть полезно для выпущенных приложений, при условии, что ваши условия четко определяют, какие данные вы регистрируете и почему.

3) Убедитесь, что вы делаете чистую сборку, я уверен, что вы уже сделалиэто, но иногда это устраняет эти проблемы.

4) Вы используете внешние библиотеки / модули?Я сталкивался с проблемами со старыми версиями TT, где настройки сборки arm6 / 7 были неправильными, и это вызывало проблемы для сборок дистрибутива.В основном, проверьте настройки сборки для каждого профиля и убедитесь, что это именно то, что вы ожидаете.

5) Подозревайте состояние гонки.В режиме распространения (часто потому, что ведение журнала отключено) вы обнаружите, что ваше приложение работает немного быстрее.Это может выявить ошибки, связанные с синхронизацией, в плохо написанном коде.

Так что да ... вы можете многое сделать ... вы просто не можете подключить отладчик; -)

0 голосов
/ 29 июля 2011

Невозможно отладить приложение в режиме распространения.

Разница в конфигурации компоновки между Distribution, Debug и Release на самом деле зависит от параметров, которые вы задали для этого в XCode.Если ваша конфигурация распространения создает проблемы, а выпуск - нет, то самый простой способ исправить это - вернуться к шагам Apple по копированию конфигурации выпуска и внести изменения, чтобы сделать ее конфигурацией распространения, как вы делали изначально.

Альтернатива состоит в том, чтобы просмотреть каждую строку конфигурации для выпуска и распространения и найти отличия.Другой способ намного быстрее.:)

...