esta fue la respuesta de brad larson en esta pregunta SO
Si agrega dos puntos de interrupción, debería poder depurar estas excepciones. Para hacer esto, vaya a Ejecutar | Mostrar | Breakpoints y creo dos breakpoints globales (los hago globalmente porque son muy útiles en todas mis aplicaciones). El primero debería llamarse "objc_exception_throw" y su ubicación debería ser "libobjc.A.dylib". El segundo debería ser "- [NSException raise]" y su ubicación debería ser "CoreFoundation".
Ahora, si comienza a depurar su aplicación con los puntos de interrupción habilitados, debería romperse al lanzar estas excepciones. Luego, debería poder ver la cadena de eventos que llevaron a la excepción dentro del depurador.
ahora en esta respuesta quiero preguntar cómo agrego la ubicación mencionada ???
fuente
Respuestas:
Creo que la respuesta de Brad es bastante clara; Con suerte, esto puede ayudar si no lo encuentra claro.
En Xcode, en el menú superior, haga clic en Ejecutar> Mostrar> Puntos de interrupción. Aparece una nueva ventana.
Seleccione "puntos de interrupción globales" en el menú de la izquierda. Debe haber un cuadro a la derecha debajo de la columna "Punto de interrupción" con el texto "Doble clic para símbolo". Haga clic en este cuadro y escriba "objc_exception_throw".
Luego, haga clic en el espacio junto a "objc_exception_throw" debajo de la columna "ubicación". Aparecerá un cuadro para que escriba la ubicación (en este caso, "libobjc.A.dylib"). Hice una captura de pantalla que espero ayude:
fuente
En Xcode 4, este gran punto de interrupción se puede agregar mediante el botón "+" en la sección Puntos de interrupción (⌘ + 6)
fuente
en Xcode 6 - desde el menú superior
fuente
También me gustaría recomendar agregar el
+[NSException raise:format:arguments:]
punto de interrupción y su ubicación debería serCoreFoundation
.fuente