Кто-нибудь знает, как автоматически устанавливать точки останова для всех методов в XCode. Я хочу знать, как работает моя программа, и какие методы вызывают при взаимодействии с пользовательским интерфейсом. Спасибо за ответ.Как автоматически установить точки останова для всех методов в XCode?
ответ
- Запустите приложение в Xcode.
- Нажмите ⌘^Y (Отладка -> Пауза).
- Перейти к консоли отладчика: ⌘⇧C
- Тип
breakpoint set -r . -s <PRODUCT_NAME>
(введите имя своего приложения).
lldb ответит что-то вроде ...
Breakpoint 1: 4345 locations
Теперь просто нажмите кнопку Продолжить.
breakpoint set
является командой lldb для создания контрольных точек. Место указывается с использованием регулярного выражения (-r
) имени функции/метода, в данном случае .
, которое соответствует любому методу. Опция -s
используется для ограничения объема вашего исполняемого файла (что необходимо для исключения фреймворков).
При запуске приложения lldb теперь будет прерываться всякий раз, когда приложение попадает в функцию из вашего основного исполняемого файла.
Чтобы отключить контрольные точки типа breakpoint delete 1
(введите правильный номер точки останова).
В некоторых случаях удобнее устанавливать точки останова только на некоторые из методов.
Используя LLDB, мы можем поставить точку останова на все методы ViewDidLoad по имени, например.
(lldb) breakpoint set -n ViewDidLoad
Здесь «-n» означает по названию.
Кроме того, мы можем поставить точки останова по имени селектора:
(lldb) breakpoint set -S alignLeftEdges:
Здесь "-S" означает селектором.
Существует много возможностей, но невозможно установить точки останова только для ваших функций.Вы можете попробовать:
breakpoint set -r '\[ClassName .*\]$'
добавить контрольные точки для всех методов в классе
breakpoint set -f file.m -p ' *- *\('
добавить контрольные точки для всех методов в файле
Вы также можете использовать его с большим количеством файлов :
breakpoint set -f file1.m -f file2.m -p ' *- *\('
Ярлык:
br se -f file1.m -f file2.m -p ' *- *\('
Вы можете добавить точки останова для всех методов во всех классах с некоторым префиксом (и это может мне только классы)
br se -r . -s Prefix
Эту строку (wzbozon ответа):
breakpoint set -n viewDidLoad
установит точки останова для всех методов viewDidLoad
во всех классах.
Я пробовал, но не смог установить контрольные точки только по нашим собственным методам.
- 1. Есть ли способ установить точки останова для всех методов класса?
- 2. Как установить конкретные точки останова в Xcode?
- 3. Xcode 5: установить символические точки останова программно
- 4. Xcode игнорирует точки останова
- 5. lldb точка останова для всех методов в объекте класса c
- 6. Исключение точки останова в Xcode
- 7. Точки останова в отладчике XCode
- 8. XCode автоматически деактивирует контрольные точки
- 9. Как удалить точки останова в XCode
- 10. Как отключить все точки останова в Xcode
- 11. Как удалить маркер точки останова в xcode?
- 12. Как решить ошибку точки останова в xcode?
- 13. Как изменить настройку точки останова в Xcode
- 14. Xcode: точки останова, отключающие себя
- 15. XCode: размещение курсора в точке точки останова в точке останова
- 16. Добавление точки останова в javascript в xcode
- 17. Как установить DOM Точки останова в chrome
- 18. Java установить точки останова программно
- 19. Точки останова не попадают в Xcode 7
- 20. Добавление точки останова XCode для регистрации NSData, возвращенной для NSRequest
- 21. Как активировать точки останова в зависимом проекте (каркас) в XCode
- 22. Запустить «список команд точки останова» для всех точек останова/итерации по точкам останова [GDB]
- 23. Исключение точки останова в AppDelegate
- 24. не удалось установить точки останова в eclipse
- 25. Вручную установить точки останова в WinDBG
- 26. Отслеживать источник «разорительного» триггера точки останова Xcode
- 27. Точки останова Xcode сдвинуты во время выполнения
- 28. Xcode точки останова оболочки длина аргумент команды
- 29. Xcode: точки останова и странные экраны
- 30. Точки останова Xcode, не показывающие текущие объекты
Спасибо за подробное объяснение. Я попытался показать список точек останова, и это сработало, но как установить точки останова для всех методов с lldb? –
В приведенном выше описании три пункта: Если ваше приложение называется «MyFooApp», введите 'breakpoint set -r. -s MyFooApp' в консоли отладчика. –
Спасибо, что это работа (это была моя ошибка - я ошибся при вводе названия проекта :) извините). Большое вам спасибо, это отлично! –