Jak dodać punkt przerwania do objc_exception_throw?

80

taka była odpowiedź brada larsona na to pytanie SO

Jeśli dodasz dwa punkty przerwania, powinieneś móc debugować te wyjątki. Aby to zrobić, przejdź do Run | Pokaż | Punkty przerwania i utwórz dwa globalne punkty przerwania (robię je globalnie, ponieważ są tak przydatne we wszystkich moich aplikacjach). Pierwsza powinna mieć nazwę „objc_exception_throw”, a jej lokalizację - „libobjc.A.dylib”. Drugim powinno być „- [NSException raise]”, a jego lokalizacja powinna być „CoreFoundation”.

Teraz, jeśli zaczniesz debugować aplikację z włączonymi punktami przerwania, powinno to zostać przerwane przy rzucaniu tych wyjątków. Następnie powinieneś być w stanie zobaczyć łańcuch zdarzeń, które doprowadziły do ​​wyjątku w debugerze.

teraz w tej odpowiedzi chcę zapytać, jak dodać wspomnianą lokalizację ???

Rahul Vyas
źródło
Czy ktoś ma zrzuty ekranu / ścieżki menu dla XCode 4?
budowa zakończyła się
2
Sprawdź ten wątek na forach programistów Apple, aby uzyskać instrukcje, jak to zrobić w XCode 4: devforums.apple.com/thread/68421
Andy Sinclair

Odpowiedzi:

81

Myślę, że odpowiedź Brada jest całkiem jasna; miejmy nadzieję, że może to pomóc, jeśli nie jest to jasne.

W Xcode, w górnym menu kliknij Uruchom> Pokaż> Punkty przerwania. Pojawi się nowe okno.

Wybierz „globalne punkty przerwania” w menu po lewej stronie. Po prawej stronie pod kolumną „Punkt przerwania” powinno znajdować się pole z tekstem „Podwójne kliknięcie dla symbolu”. Kliknij raz w to pole i wpisz „objc_exception_throw”.

Następnie kliknij raz w miejscu obok „objc_exception_throw” w kolumnie „lokalizacja”. Pojawi się pole, w którym można wpisać lokalizację (w tym przypadku „libobjc.A.dylib”). Zrobiłem zrzut ekranu, który, mam nadzieję, pomoże:

tekst alternatywny

h4xxr
źródło
Działa świetnie. Dzięki za szczegóły.
Rob Segal
17
W Xcode 4 istnieje nawigator punktów przerwania, w którym można je dodać.
Don
Możesz także zainstalować skrypt, który wyświetla opis wyjątku w konsoli , musi mieć!
DanSkeel
45

W Xcode 4 ten wspaniały punkt przerwania można dodać za pomocą przycisku „+” w sekcji punktów przerwania (⌘ + 6)

wprowadź opis obrazu tutaj

Valerii Pavlov
źródło
1
To samo podejście można zastosować w XCode 5
Ameer Sheikh
Możesz także zainstalować skrypt, który wyświetla opis wyjątku w konsoli , musi mieć!
DanSkeel
6

w Xcode 6 - z górnego menu

Debuguj> Punkty przerwania> Utwórz punkt przerwania wyjątku

user3812138
źródło
Pozostałe odpowiedzi uległy zmianie, ta odpowiedź jest poprawna od kwietnia 2017 r. / Xcode8
Josh
4

Chciałbym również polecić dodanie +[NSException raise:format:arguments:]punktu przerwania i jego lokalizacji CoreFoundation.

Ameer Sheikh
źródło