Quiero ver qué sucede en el simulador de iOS si no estoy probando la aplicación en Xcode.
Por ejemplo, si abro un enlace en el simulador de Safari, veo lo que sucede en la consola, o si instalo una aplicación web, veo los enlaces que estoy presionando en la consola.
¿Cómo puedo hacer esto?
Quiero verlo en Xcode o Terminal, pero no es un problema si necesito usar otro bit de software.
ios
console
ios-simulator
usuario1335015
fuente
fuente
Respuestas:
Simulador de iOS> Barra de menú> Depurar> Abrir registro del sistema
Maneras viejas:
iOS Simulator imprime sus registros directamente en stdout, para que pueda ver los registros mezclados con los registros del sistema.
Abra la Terminal y escriba:
tail -f /var/log/system.log
Luego ejecuta el simulador.
EDITAR:
Esto dejó de funcionar en Mavericks / Xcode 5. Ahora puede acceder a los registros del simulador en su propia carpeta:
~/Library/Logs/iOS Simulator/<sim-version>/system.log
Puede usar Console.app para ver esto, o simplemente hacer una cola (iOS 7.0.3 64 bits por ejemplo):
tail -f ~/Library/Logs/iOS\ Simulator/7.0.3-64/system.log
EDITAR 2:
Ahora se encuentran en
~/Library/Logs/CoreSimulator/<simulator-hash>/system.log
tail -f ~/Library/Logs/CoreSimulator/<simulator-hash>/system.log
fuente
console.log
este registro usandotail
oConsole.app
Puede ver la consola para el simulador de iOS a través de Safari de escritorio. Es similar a la forma en que usa Safari de escritorio para ver la consola para dispositivos iOS físicos.
Siempre que el simulador se esté ejecutando y haya una página web abierta, habrá una opción en el menú Desarrollar en el safari de escritorio que le permite ver la consola del simulador de iOS:
Desarrollar -> iPhone Simulator -> nombre del sitio
fuente
Hay una opción en el simulador para abrir el
console
o usa el
keyboard shortcut: ⌘/
fuente
iOS 8 y iOS 9
En iOS 8 e iOS 9, esta ubicación ahora es:
Entonces, lo siguiente funcionará:
El
DEVICE_CODE
valor se puede encontrar a través del siguiente comando de consola:fuente
instruments -s devices
en la consolaxcrun simctl spawn booted log stream --level=debug | grep App_Debug_String
trabajó.Usted no debe confiar en
instruments -s
. La herramienta oficialmente compatible para trabajar con simuladores desde la línea de comandos esxcrun simctl
.El directorio de registro de un dispositivo se puede encontrar con
xcrun simctl getenv booted SIMULATOR_LOG_ROOT
. Esto siempre será correcto incluso si la ubicación cambia.Ahora que las cosas se están moviendo
os_log
, es más fácil abrir Console.app en la Mac host. Los simuladores iniciados deben aparecer como una fuente de registro a la izquierda, al igual que los dispositivos físicos. También puede ejecutar comandos de registro en el simulador arrancado:Si desea usar las herramientas de desarrollador de Safari (incluida la consola JS) con una página web en el simulador : Inicie uno de los simuladores, abra Safari, luego vaya a Safari en su Mac y debería ver Simulador en el menú.
Puede abrir una URL en el simulador arrastrándola desde la barra de direcciones de Safari y soltándola en la ventana del simulador. También puedes usar
xcrun simctl openurl booted <url>
.fuente
log help predicates
le dará más información. El formato del predicado sigue NSPredicate.Si está utilizando Swift , recuerde que
println
solo se imprimirá en el registro de depuración (que aparece en el área de depuración de xCode). Si desea imprimir en system.log, debe usarloNSLog
como en los viejos tiempos.Luego puede ver el registro del simulador a través de su menú, Depuración> Abrir registro del sistema ... (cmd + /)
fuente
La cola
/var/log/system.log
no funcionó para mí. Encontré mis registros usandoConsole.app
. Ellos estaban en~/Library/Logs/iOS Simulator/{version}/system.log
fuente
Puede usar la
Console
aplicación (seleccione su dispositivo en Dispositivos) en su Mac para ver un mensaje de registro que se envió usandoNSLog
(no verá registros de laprint
función).Tenga en cuenta que si desea ver un registro
WebView
, debe usarSafary -> Develop -> device
[Buscar registro de bloqueo]
fuente
cmd
then
space bar
Tipo "Console
" presioneenter
. Por cierto. esa debería ser la respuesta correcta hoy.XCode> 6.0 Y iOS> 8.0 El siguiente script funciona si tiene una versión XCode> 8.0
Utilizo el pequeño script a continuación para seguir los registros del simulador en la consola del sistema.
Puede pasar el tipo de simulador utilizado en Grep como argumento. Como se mencionó en las publicaciones anteriores, hay comandos de simctl e instrumentos para ver el tipo de simuladores disponibles para su uso según la versión de Xcode. Para ver la lista de dispositivos / simuladores disponibles.
O
Ahora puede pasar el código del dispositivo o el tipo de simulador como argumento para el script y reemplazar el "iPhone 6 (8.2 Simulator)" dentro de grep por $ 1
fuente
Puedo abrir el registro directamente a través del simulador de iOS:
Debug -> Open System Log...
no estoy seguro de cuándo se introdujo, por lo que podría no estar disponible para versiones anteriores.fuente
Puede ver la ventana de la consola del simulador, incluido Safari Web Inspector y todas las herramientas de desarrollo web mediante la aplicación Safari Technology Preview. Abra su página en Safari en el simulador y luego vaya a Vista previa de la tecnología Safari> Desarrollar> Simulador.
fuente
No
NSLog
oprint
se escribirá en el contenidosystem.log
, que puede abrirse con SeleccionarSimulator -> Debug -> Open System log
en Xcode 11.Descubro un camino, escribo registros en un archivo y lo abro
xx.log
con.Terminal.app
Luego los registros se presentarán enTerminal.app
vivo.Yo uso CocoaLumberjack para lograr esto.
PASO 1:
Agregar
DDFileLogger
DDOSLogger
e imprimir ruta de registros.config()
debe llamarse cuando la aplicación almuerzo.PASO 2:
Reemplazar
print
oNSLog
conDDLogXXX
.PASO 3:
Aquí, el mensaje se presentará en Terminal.app animado.
fuente