El simulador de iOS es una parte integral de cualquier proceso de desarrollo de iOS. Simplemente no podemos ignorarlo. Nuevo Simulador de Xcode 9 trae un montón de trucos útiles, lo que podría hacer aún más productivo. ¡Por fin, Apple ha recordado que tiene el Simulador por ahí! En comparación con las modestas actualizaciones anteriores, esta parece una gran cosa. 🙌

Así que vamos a desglosar esto y la lista de todas las características que he encontrado en el nuevo simulador de iOS (algunos trucos que puede utilizar en los antiguos Simuladores también).

#1 Utilizar Simulador en modo de pantalla completa con Xcode

Cuando se tiene una pantalla de 13″ el modo de pantalla completa para Xcode es simplemente un salvavidas. Lamentablemente, antes no podías usar Simulator con Xcode en el modo de pantalla completa. Bueno, ahora puedes 😎

Modo de pantalla completa con Xcode 9 y iOS Simulator

Esta característica está habilitada por defecto a partir de Xcode 9b3. Así que ni siquiera tienes que hacer nada para que funcione.

UPD: Resulta que esta característica está desactivada por defecto para algunas personas, pero no te preocupes, siempre puedes activarla a través del menú de Apple Internalcomo he descrito más adelante.

Si quieres explorar más funciones secretas en el nuevo Simulator debes habilitar el menú oculto de Apple Internals.

Para ello debes crear una carpeta vacía con el nombre «AppleInternal» en el directorio raíz. Sólo tienes que ejecutar este comando de abajo y reiniciar el Simulador:

sudo mkdir /AppleInternal

El nuevo elemento del menú debería aparecer. ☝️

Nota:
He probado este enfoque en el Simulador de Xcode 9b3. Si no lo tienes, por favor descarga la última versión de Xcode aquí.

#2 Abrir varios Simuladores a la vez

¿Recuerdas la frustración de probar tu aplicación en diferentes simuladores? Antes estabas obligado a abrir sólo una instancia del Simulador a la vez. Había muchos «hacks» cómo abrir múltiples instancias del simulador de iOS en una versión anterior de Xcode. Pero finalmente, con Xcode 9 esta característica está disponible fuera de la caja.

#3 Cambiar el tamaño del Simulador al igual que una ventana normal

Antes de Xcode 9 teníamos «Opciones de escala» sólo para ajustar el tamaño de la ventana del simulador. Ahora Apple finalmente hizo disponible el cambio de tamaño de la ventana del Simulador. Es un pequeño detalle útil que puede ayudar a organizar el espacio de trabajo de manera eficiente si tiene varios simuladores abiertos.

#4 Grabar vídeo del simulador

En el documento oficial «What’s new» para Xcode 9, Apple afirma que ahora se puede grabar un vídeo de la pantalla del simulador. No es del todo cierto. Se puede hacer incluso en las versiones anteriores con simctl. Sin embargo, no he encontrado ninguna prueba de que se pueda habilitar la grabación de vídeo desde la interfaz (a excepción de la grabación de pantalla incorporada en iOS 11).

Para obtener su archivo de vídeo, ejecute el siguiente comando:

xcrun simctl io booted recordVideo --type=mp4 <PATH TO VIDEO FILE>

booted – significa, que simctl selecciona el Simulador actualmente arrancado. En caso de que tenga más de un Simulador arrancado, simctl selecciona la instancia actualmente activa.

#5 Compartir archivos al Simulador directamente desde el Finder

Ahora el Simulador tiene la extensión Finder que le permite compartir archivos directamente desde la ventana del Finder.

Puede hacer algo similar con los archivos de imagen/vídeo utilizando el comando simctlque aparece a continuación:

xcrun simctl addmedia booted <PATH TO MEDIA FILE>

Es bueno tener estas habilidades. Sin embargo, arrastrar&soltar el archivo a la ventana del Simulador me parece mucho más rápido.

#6 Abrir URLs en el Simulador

Este también viene con simctl. Así que puedes abrir esquemas de URL personalizados en Simuladores más antiguos también.

Ejecuta el comando de abajo con cualquier URL que necesites:

xcrun simctl openurl booted <URL>

Para la lista de todos los esquemas de URL de Apple por favor revisa la documentación.

#7 Encuentra rápidamente la carpeta contenedora de la aplicación

Un comando más de simctl. Puede obtener el contenedor de la aplicación en el sistema de archivos con un solo comando. Sólo necesitas saber el identificador del bundle de la aplicación y ejecutar el siguiente comando:

xcrun simctl get_app_container booted <APP'S BUNDLE ID>

O puedes hacerlo aún más rápido abriendo la carpeta de destino en el Finder con el comando open:

open `xcrun simctl get_app_container booted <APP'S BUNDLE ID>` -a Finder

#8 Lanzar tu aplicación en el Simulador con argumentos de línea de comandos

Con simctl también puedes lanzar tu aplicación desde el terminal y pasar algunos argumentos de línea de comandos allí (incluso puedes configurar algunas variables de entorno). Puede ser útil si quieres añadir algún comportamiento oculto de depuración a tu aplicación.

El siguiente comando te ayudará con eso:

xcrun simctl launch --console booted <BUNDLE ID> <YOUR ARGUMENTS>

Puedes obtener estos argumentos de línea de comandos desde CommandLine.arguments (aquí está el enlace a la documentación).

#9 Obtener información completa de la aplicación con el ID del paquete

A veces es útil averiguar dónde se encuentra el archivo de tu aplicación o los datos temporales en el sistema de archivos. Si necesita información más completa de lo que simctl get_app_container puede dar. simctl también tiene esta pequeña herramienta llamada appinfo que le mostrará alguna información en el siguiente formato:

{
ApplicationType = User;
Bundle = <PATH TO APP FILE>;
BundleContainer = <PATH TO FOLDER WITH APP FILE>;
CFBundleDisplayName = TestiOSApp;
CFBundleExecutable = TestiOSApp;
CFBundleIdentifier = "com.ahmed.app.TestiOSApp";
CFBundleName = TestiOSApp;
CFBundleVersion = 1;
DataContainer = <PATH TO YOUR DATA>;
GroupContainers = {
};
Path = <PATH TO APP FILE>;
SBAppTags = (
);
}

Ejecute el comando de abajo y explore la salida:

xcrun simctl appinfo booted <BUNDLE ID>

Una última cosa…

El Simulador de iOS es una herramienta muy poderosa que puede acelerar su proceso de desarrollo mucho. Pero sólo si conoces todos los pequeños detalles y trucos. Y obviamente, como buen ingeniero, tienes que conocer tus herramientas.

Aquí en Flawless, el Simulador de iOS es extremadamente importante para nosotros. Nuestro producto es un plugin del Simulador de iOS que permite a los ingenieros inspeccionar cualquier diseño sobre la implementación justo dentro del Simulador. Así que no puedo decir lo feliz que estoy con esta nueva versión de Xcode 9 y Simulator. ¡No puedo esperar a la versión pública! Así que podemos implementar más características útiles para mantener una calidad visual de las aplicaciones de iOS en una buena forma.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.