Cuando abro la consola después de que la aplicación de mi iPhone se cuelga, a menudo dice "selector no reconocido enviado a la instancia 0x blah blah blah". ¿Cómo puedo averiguar qué variable es esto? ¿Hay alguna forma en el depurador? ¿Es posible? Gracias.¿Cómo encontrar instancia por hexadecimal en la consola XCode?
Respuesta
En GDB podría escribir
po 0x12345678
para imprimir el -description
del objeto en esa dirección. Pero esta información rara vez es útil. En su lugar, primero debe verificar la traza de la excepción, que puede ubicar la línea de código que causa el problema.
Es muy útil crear un punto de interrupción de excepción, y con Xcode 7.3, nunca ha sido tan fácil. Esto lo ayudará a encontrar la línea de código que causa una excepción.
- añadir punto de interrupción en la línea donde la aplicación se bloquea
- haga clic en el punto de interrupción en el menú del navegador de proyectos
- encontrar el punto de interrupción que acaba de crear y seleccione que
- haga clic en el signo "+ "en la parte inferior izquierda
- Seleccione" Agregar punto de interrupción de excepción "
Ejecute su código ... siempre que obtenga un "selector no reconocido enviado a la instancia 0x blah blah blah", el depurador se detendrá en la línea que está causando el problema.
solución brillante – GenRiH
- 1. ¿Cómo borrar la consola programáticamente en Xcode?
- 2. Xcode 4: ¿Cómo ves la consola?
- 3. Cómo filtrar la salida de la consola en Xcode
- 4. Entrada a la consola en Xcode 4
- 5. Cómo imprimir registros de desensamblaje en la consola de Xcode
- 6. Xcode consola, pantalla clara programáticamente
- 7. Servidor SQL: cómo encontrar el carácter hexadecimal en una tabla
- 8. ¿Cómo se conecta la consola a Xcode IDE
- 9. ¿Ver caracteres Unicode en la consola de Xcode?
- 10. Xcode 4: Excepciones que no se registraron en la consola
- 11. ¿Cómo creo una consola C++/proyecto de terminal en XCode?
- 12. ¿cómo busco un objeto por su ObjectId en la consola?
- 13. ¿Cómo se ve la cadena hexadecimal SHA256?
- 14. Eliminar por _id en la consola MongoDB
- 15. Xcode 4 - separar la ventana de consola/registro
- 16. ¿Cómo obtener la instancia de Doctrine ORM en la aplicación de la consola Symfony2?
- 17. Use vim para buscar por código hexadecimal
- 18. Cómo encontrar la fuente de salida de la fuente de impresión() o NSLog() en Xcode
- 19. Salida de consola de color Xcode
- 20. Xcode - encontrar métodos muertos en un proyecto
- 21. ¿Cómo imprimo la propiedad de un objeto a la consola del depurador en Xcode?
- 22. ¿Por qué la consola de XCode Organizer a veces está vacía cuando conecto mi iPhone?
- 23. Cómo encontrar cada instancia de una clase en Ruby
- 24. ¿Cómo encontrar una instancia de un método enlazado en Python?
- 25. No se puede encontrar la declaración de protocolo en Xcode
- 26. ¿Cómo imprimir la excepción automáticamente en xcode?
- 27. Declaración local "x" oculta la variable de instancia xcode warning
- 28. instancia EC2 terminada antes de iniciar. Sin registro de consola
- 29. Cómo borro la consola en Objective-C
- 30. Python - Cómo editar el byte de archivo hexadecimal por byte
Sí, tampoco me lo puedo imaginar. ¿El número de línea del código que causó la excepción es el número después del + en la pila de llamadas? – marty
@marty: ¿Está compilando para la depuración? No es necesario verificar esta información complicada. Simplemente use el depurador incorporado. Ver [* Guía de desarrollo de iOS: aplicaciones de depuración *] (http://developer.apple.com/iphone/library/documentation/xcode/conceptual/iphone_development/130-Debugging_Applications/debugging_applications.html) y [* Xcode Debugging Guide *] (http://developer.apple.com/iphone/library/documentation/DeveloperTools/Conceptual/XcodeDebugging/000-Introduction/Introduction.html#//apple_ref/doc/uid/TP40007057). – kennytm
Esta es la respuesta más útil que encontré aquí :) – shannoga