Как запустить программу iPhone с помощью инструмента Zombies?
Я запускаю XCode 3.2 на Snow Leopard, и я пытаюсь запустить инструмент Zombies против моего приложения, но выделение выделено серым цветом, и я не знаю почему. Я знаю о переменной среды NSZombieEnabled. У меня есть значение YES для моего приложения. Я не уверен, что это имеет значение, но приложение - это приложение, которое я начал разрабатывать на Leopard с предыдущей версией XCode. Вот скриншот, как выглядит мое меню:
![ScreenShot]()
Ответы
Ответ 1
Вам нужно запустить приложение "Инструменты" с помощью инструмента "Зомби" вне XCode
Вот как вы можете это сделать:
Приложение "Инструменты" обычно находится внутри /Developer/Applications/
, но вы также можете использовать Spotlight для его поиска.
При запуске инструментов вам будет представлен экран, в котором вам будет предложено выбрать шаблон для нового документа трассировки.
Выберите: iPhone Simulator > Memory > Zombies
Затем вам нужно выбрать цель.
Перейдите к: Chose target > Chose target > Chose target...
Теперь вам нужно выбрать файл приложения:
<Path to your iPhone project>/build/Debug-iphonesimulator/<Application name>
и нажмите Chose
.
Теперь вы все настроены.
Чтобы запустить приложение, нажмите кнопку Record
.
Несколько Боковых заметок:
- Я использовал XCode 3.2.3 в Mac OS X 10.6.3, но я считаю, что он работает в предыдущих версиях.
- Инструмент Zombies работает только с симулятором.
- Инструмент "Зомби" не может использоваться с инструментом "Утечки", потому что все зомби выглядят как утечки.
- Я также хотел бы знать, почему меню в XCode выделено серым цветом.
Ответ 2
Вы уверены, что настроили его в нужном месте? Я имею в виду, что это время выполнения, а не время компиляции. Просто убедитесь, что вы устанавливаете его в нужном месте и повторите попытку.
Перейдите в Project → Edit Active Executable
Нажмите "Аргументы"
Нажмите + в разделе "Переменные, которые должны быть установлены в среде"
Введите NSZombieEnabled в столбце Name и YES в столбце Value.
Убедитесь, что отмечена отметка для записи NSZombieEnabled.
Ответ 3
Как сказали инженеры Apple, большинство элементов под управлением Run with Performance Tool нуждаются в поддержке dTrace, но dTrace пока недоступна для iOS, даже для симуляторов.
Однако, как ни странно, вы можете вручную настроить шаблон в Инструментах для тестирования зомби, как описано @florin