Як додати точку зупинки до objc_exception_throw?


80

це була відповідь Бред Ларсона на це ТАКЕ питання

Якщо ви додасте дві точки зупинку, ви зможете налагодити ці винятки. Для цього перейдіть до Run | Показати | Точки зупинки та створюють дві глобальні точки зупинки (я роблю їх у всьому світі, оскільки вони так корисні у всіх моїх додатках). Перший має бути названий "objc_exception_throw", а його місцезнаходження має бути "libobjc.A.dylib". Другий повинен бути "- [NSException підняти]", а його розташування має бути "CoreFoundation".

Тепер, якщо ви почнете налагоджувати програму з увімкненими точками зупинки, вона повинна зламатися під час винятку цих винятків. Потім ви зможете побачити ланцюжок подій, що призвели до винятку в налагоджувачі.

тепер у цій відповіді я хочу запитати, як додати згадане місце ???


Хтось має скріншоти / шляхи меню для XCode 4?
build

2
Перегляньте цю тему на форумах Apple Dev, щоб отримати вказівки щодо того, як це зробити в XCode 4: devforums.apple.com/thread/68421
Енді Сінклер,

Відповіді:


81

Я думаю, що відповідь Бреда досить чітка; сподіваємось, це може допомогти, якщо ви не зрозуміли цього.

У Xcode у верхньому меню натисніть Виконати> Показати> Точки зупинки. Вискакує нове вікно.

Виберіть "глобальні точки зупинки" в меню ліворуч. Праворуч під стовпцем "Точка зупинки" має бути поле з текстом "Двічі клацніть на символ". Клацніть у цьому полі одним клацанням і введіть "objc_exception_throw".

Потім клацніть один раз у просторі поряд із "objc_exception_throw" у стовпці "location". З'явиться вікно для введення місцеположення (у цьому випадку "libobjc.A.dylib"). Я зробив скріншот, який, сподіваюся, допоможе:

текст заміщення


Чудово працює. Дякую за деталі.
Роб Сігал,

17
У Xcode 4 є навігатор точки зупинку, куди ви можете їх додати.
Дон,

Також ви можете встановити скрипт, який друкує опис винятків у консолі , повинен бути!
DanSkeel

45

У Xcode 4 цю чудову точку зупинки можна додати за допомогою кнопки "+" у розділі "Точки зупинки" (⌘ + 6)

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


1
Цей самий підхід може бути використаний у XCode 5
Ameer Sheikh

Також ви можете встановити скрипт, який друкує опис винятків у консолі , повинен бути!
DanSkeel

6

у Xcode 6 - з верхнього меню

Налагодження> Точки зупинки> Створити точку зупинки винятків


Інші відповіді змінились, ця відповідь правильна станом на квітень 2017 р. / Xcode8
Джош

4

Я також хотів би порекомендувати додати +[NSException raise:format:arguments:]точку зупинки та її місце розташування CoreFoundation.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.