2012-02-17 11 views
11

¿Hay alguna manera de ver los registros de la consola de una aplicación que se ejecuta en el simulador de iOS cuando no ejecuto el código a través de Xcode? Estoy abriendo directamente la aplicación desde el simulador. ¿Puedo ver las declaraciones NSLog imprimiendo en algún lado?Ver el NSLog para una aplicación que se ejecuta directamente en el simulador, no a través de Xcode

+0

Ejecute el organizador de Xcode. – 0xDE4E15B

+0

El organizador funciona para el dispositivo y no para el simulador. – Abhinav

Respuesta

1

Pude ver los registros en la aplicación "Consola" en el sistema operativo MAC.

5

Sí. He aquí una cita de Tools Workflow Guide for iOS:

Cuando se ejecuta la aplicación en un simulador, puede acceder a la consola registros de la aplicación en la aplicación de consola (que se encuentra en /Applications/Utilities).

3

From BYU CocoaHeads:

redirigidas NSLog()

De vez en cuando, es posible que desee redirigir su salida NSLog() en un archivo para que pueda examinarlo con mayor comodidad. NSLog() funciona enviando mensajes a STDERR, por lo que todo lo que necesita hacer es redirigir la secuencia STDERR a un archivo, y listo. El siguiente código redirigirlo a un archivo en el escritorio:

int fd = creat("/Users/dave/Desktop/my_log", 
         S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); 
    close(STDERR_FILENO); 
    dup(fd); 
    close(fd); 
    NSLog(@"this will be written to my_log"); 

Esto sólo afectará NSLog() llamadas desde su aplicación.

+1

Uhh, quien escribió ese artículo necesita trabajar en su conocimiento de POSIX; ellos están confiando pasivamente en la noción de que el próximo fd abierto será 2; esto no está garantizado para funcionar y realmente hará lo incorrecto si otro hilo abre un archivo al mismo tiempo. La primera llamada 'close' y' dup' deben reemplazarse con 'dup2 (fd, STDERR_FILENO)'. – asveikau

Cuestiones relacionadas