NSLog
está trabajando perfectamente .
Simplemente no ve lo que se está registrando en el área de depuración de Xcode porque el depurador de Xcode no está adjunto a su extensión. Las extensiones son casi completamente independientes de la aplicación que las contiene. Tienen identificadores de paquete separados, por ejemplo, y también son procesos separados en el sistema operativo.
He tenido varios éxitos en lograr que Xcode se adjunte a las extensiones. Supuestamente parece que se adjunta automáticamente, y aparece en el navegador de depuración como "Esperando adjuntar", pero nunca se adjunta.
A veces, puedo ejecutar mi destino de extensión en Xcode:
Y luego tengo la opción de elegir en qué aplicación ejecutar mi extensión. En este caso, elegiría su recomendación de "hoy", que es el centro de notificaciones.
Y luego a veces adjuntaba el depurador a mi extensión. Tenga en cuenta que este método solo funciona en dispositivos físicos, al parecer.
Si no se adjunta, puede usar el método de adjunto manual en la respuesta de @ VinceYaun,
También he tenido un éxito variado utilizando otros métodos de apego. La mayoría no han tenido éxito y parece que son solo errores que se solucionarán en una fecha posterior.
Para ver sus mensajes de registro, vaya a Window
-> Devices
en la barra superior y seleccione su dispositivo. Puede abrir el registro del dispositivo desde la parte inferior de esa ventana. Si está probando en un simulador, puede usar la respuesta de @ BalestraPatrick .
Algunos de los errores se han corregido en Beta 2, y supongo que eventualmente el depurador se adjuntará automáticamente al iniciar la extensión.
Actualización: en las notas de la versión de iOS 8 Beta 4 :
Extensiones
Corregido en beta 4
- Las extensiones a veces no se inician al depurar desde Xcode.
- Cuando se mata Extension with UI, se vuelve a iniciar y no se descarta.
- A veces, su extensión Compartir o Acción puede bloquearse.
- Volver a implementar una extensión puede deshabilitarla en el Centro de notificaciones.