Включить и отладить объекты зомби в iOS с помощью Xcode 5.1.1

У меня есть приложение для iOS (7.1), которое аварийно завершает работу из-за EXC_BAD_ACCESS. Если я не ошибаюсь, это происходит из-за использования объекта, который уже освобожден. Немного покопавшись, я обнаружил, что включение объектов Zombie помогает определить линию ошибки. Поскольку я использую xcode 5.1.1, я сделал следующее, чтобы Включить объекты-зомби.

Продукт ->Схема -> Редактировать схему


А затем, установив флажок Enable Zombie Objects,

Проверка ‹code›Включить объекты-зомби‹/code›


Затем я перешел на панель Инструменты, выбрал Зомби, нажал Профиль и получил это,

симулятор iOS и панель инструментов


Теперь симулятор (на левом фоне), который имел button и textfield, работает пустым, а также я ничего не понимаю на панели Инструменты.

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

Любая помощь приветствуется.


person Sibir    schedule 23.09.2014    source источник


Ответы (1)


Доступ к освобожденному объекту — не единственная причина, по которой вы получите EXC_BAD_ACCESS. Другие причины ошибок неправильного доступа включают доступ к нулевым указателям и выход за границы массива.

Глядя на ваши скриншоты, вы не используете освобожденный объект. Если вы использовали освобожденный объект, шаблон «Зомби» в «Инструментах» сообщит вам об этом. Инструменты будут отображать сообщение, подобное следующему:

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

Следующим вашим шагом должна быть установка точки останова исключения в Xcode. Когда ваше приложение дает сбой, Xcode приостанавливает ваше приложение в точке, где происходит сбой. Чтобы установить точку останова исключения, откройте навигатор точек останова, выбрав «Просмотр» > «Навигаторы» > «Показать навигатор точек останова». Нажмите кнопку + в нижней части навигатора и выберите «Добавить точку останова исключения».

person Mark Szymczyk    schedule 24.09.2014
comment
Да, я сделал именно это и теперь пытаюсь понять, почему некоторые простые операторы генерируют исключения!! - person Sibir; 26.09.2014
comment
не получил никакого сообщения zoobie, но по-прежнему приводит к сбою приложения и получил сообщение о доступе BADD. stackoverflow.com/questions/50665149/ - person Vineesh TP; 04.06.2018