Сбой приложения в симуляторе iPad без полезной информации о консоли - PullRequest
7 голосов
/ 21 апреля 2011

пожалуйста, простите новичка здесь - я запускаю приложение в симуляторе, и иногда, когда оно выходит из строя, оно публикует полезную информацию в консоли, в других случаях абсолютно ничего.Когда он ничего не публикует, какие шаги следует предпринять, чтобы начать отслеживать причину аварии?

Ответы [ 4 ]

10 голосов
/ 21 апреля 2011

Прежде всего откройте отладчик после сбоя и посмотрите на трассировку стека.

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

Отладчик с трассировкой стека (верхнее левое окно),XCode3

enter image description here

Stacktrace Xcode4

enter image description here

5 голосов
/ 28 июля 2011

Я могу непрерывно воспроизводить такое поведение с помощью нашего приложения. Он использует ARC, так что я уверен, что ничего не выйдет, и у нас есть зомби. Xcode скажет «Приостановлено» вместо отображения списка потоков, кнопка «Продолжить» активна, но ничего не делает, и ввод bt в приглашении (gdb) говорит Нет стека .

Это сводит меня с ума!

0 голосов
/ 22 апреля 2011

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

0 голосов
/ 21 апреля 2011

Определите, на каком событии происходит сбой приложения.Например, если в приложении происходит сбой при нажатии кнопки UIB, вы можете установить точку останова в действии и пройти по строкам кода, чтобы увидеть, на какой из них происходит сбой.Иногда, когда нет аварийного журнала при сбое приложения, отладка с помощью этого метода оказывается действительно полезной.

Полагаю, это проблема памяти.

...