ios xcode console logging device

ios - Registrando datos en el dispositivo y recuperando el registro



xcode console (9)

Creo que en Xcode 9.3 la pantalla de registro del dispositivo se ha movido a una nueva ubicación. Por favor, consulte el siguiente enlace.

Obtener registros del dispositivo en tiempo de ejecución en Xcode

En una versión de depuración en Xcode, independientemente de si estoy utilizando el simulador o un dispositivo real, NSLog, printf, fprintf assert y NSAssert declaraciones salen en la consola

Si ahora ejecuto una compilación de lanzamiento en el dispositivo (digamos que envío una compilación de vuelo de prueba y lo amplío en mi iPhone, esta será una compilación de lanzamiento), ¿cuál de estos (si hay alguno) se está grabando?

¿Y cómo recupero el registro?

¿Realmente NSLog muestra algo en la versión de lanzamiento? ¿Cuál es el factor determinante? Si está escribiendo en stdout o stderr? ¿solo se escribe stderr en el registro del dispositivo? ¿Esto significa que tengo que usar fprintf? ¿Se ha escrito ALGO en el registro del dispositivo? ¿hay tal cosa? Si es así, ¿cómo recogerlo?

¿Alguien podría aclarar la situación?


En Xcode 6.1.1, puede ver la salida NSLog haciendo lo siguiente. Sin embargo, no estoy seguro de si te permite ver los registros desde demasiado atrás en el tiempo. Solo lo he visto retroceder hasta un par de horas.

En cualquier caso, aquí están los pasos:

  1. En Xcode, vaya a Ventana -> Dispositivos.
  2. Seleccione su dispositivo en el panel izquierdo.
  3. Haga clic en la pequeña flecha como se muestra en la captura de pantalla a continuación.

En swift 3.0, el código de Shyl cambiará a,

var paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true) let documentsDirectory = paths[0] let fileName = "/(Date()).log" let logFilePath = (documentsDirectory as NSString).appendingPathComponent(fileName) freopen(logFilePath.cString(using: String.Encoding.ascii)!, "a+", stderr)

todos los demás procesos son los mismos que explica Shyl

Simplemente agregue este bloque de código en la aplicación: método didFinishLaunchingWithOptions en el archivo de delegado de la aplicación y se creará un archivo de registro en el directorio de documentos de la aplicación en iPhone que registra todos los eventos de registro de la consola. Debe importar este archivo desde iTunes para ver todos los eventos de la consola.

Nota: en el archivo .plist, asegúrese de que la Application supports iTunes file sharing y esté configurado en YES para que pueda acceder a través de iTunes.

Para obtener archivos de registro: inicie iTunes, después de que su dispositivo se haya conectado seleccione Aplicaciones - seleccione su aplicación - en el documento de aumento obtendrá su archivo. Luego puede guardarlo en su disco



NSLog se escribe en el inicio de sesión del dispositivo en la versión de producción y puede verificarlo conectando su iPhone a su sistema y utilizando Organizer. Seleccione su iPhone en el organizador, haga clic en Registros de dispositivo. Vería todas las salidas NSLog en el registro.


Sé que este es un hilo viejo pero también puedes tener acceso a los registros del dispositivo que van a:

Configuración -> Privacidad -> Analítica -> Datos

Espero que esto ayude

Saludos


Sí, las salidas NSLog en el dispositivo. Puede ver sus salidas con su dispositivo conectado a su Mac y usando la herramienta Xcode Organizer.



NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSString *fileName =[NSString stringWithFormat:@"%@.log",[NSDate date]]; NSString *logFilePath = [documentsDirectory stringByAppendingPathComponent:fileName]; freopen([logFilePath cStringUsingEncoding:NSASCIIStringEncoding],"a+",stderr);

Simplemente agregue este bloque de código en la application:didFinishLaunchingWithOptions método application:didFinishLaunchingWithOptions en el archivo de delegado de la aplicación y se creará un archivo de registro en el directorio de documentos de la aplicación en iPhone que registra todos los eventos de registro de la consola. Debe importar este archivo desde iTunes para ver todos los eventos de la consola.

Nota: en el archivo .plist, asegúrese de que la Application supports iTunes file sharing y que esté configurado en YES para que pueda acceder a través de iTunes.

Para obtener archivos de registro: inicie iTunes, después de que su dispositivo se haya conectado seleccione Aplicaciones - seleccione su Aplicación - en el Documento de presupuesto obtendrá su archivo. Luego puede guardarlo en su disco