31/07/2012
Para cualquier desarrollador de aplicaciones o juegos para iOS, el simulador es una herramienta indispensable en el día a día. Permite probar, depurar y refinar creaciones de manera rápida y eficiente sin necesidad de tener un dispositivo físico conectado constantemente. Desarrollar directamente en un ordenador es más cómodo, especialmente cuando las condiciones de la red son lentas o se requiere una conexión de túnel debido a limitaciones de la LAN. Esta guía completa te llevará desde la instalación básica en macOS hasta el uso de funciones avanzadas como la simulación remota en Windows y el control por terminal, resolviendo los problemas más comunes en el camino.

Instalación y Configuración Inicial en macOS
El ecosistema de Apple centraliza gran parte de sus herramientas de desarrollo en Xcode, por lo que este será nuestro punto de partida. Si eres usuario de macOS, el proceso es bastante directo.
Pasos para la Instalación
- Instalar Xcode: La forma más sencilla es abrir la Mac App Store, buscar "Xcode" y hacer clic en "Instalar" o "Actualizar" si ya lo tienes. Este es el entorno de desarrollo integrado (IDE) oficial de Apple y contiene el simulador y todos los SDKs necesarios.
- Instalar las Herramientas de Línea de Comandos: Una vez instalado Xcode, ábrelo. Ve al menú Xcode > Settings... (o presiona
Cmd + ,). Navega a la pestaña "Locations" y en el menú desplegable "Command Line Tools", selecciona la versión más reciente. Estas herramientas son cruciales para que muchos gestores de paquetes y scripts de compilación funcionen correctamente. - Instalar un Simulador de iOS específico: Dentro de la misma ventana de Settings..., ve a la pestaña "Components". Aquí verás una lista de simuladores para diferentes versiones de iOS. Simplemente busca la versión que necesites y haz clic en "Get" para descargarla. Puedes tener múltiples versiones instaladas simultáneamente.
- Instalar Watchman (Recomendado): Watchman es una herramienta de Facebook que vigila los cambios en el sistema de archivos. Instalarlo mejora significativamente el rendimiento de la recarga en vivo y otros procesos automáticos durante el desarrollo. Puedes instalarlo fácilmente usando Homebrew:
brew updatebrew install watchman
Una vez completados estos pasos, ya puedes ejecutar tu aplicación. Por ejemplo, en un proyecto de Expo, usarías npx expo start y luego presionarías la tecla 'i' para que se abra automáticamente en el simulador. La primera vez, es posible que se te pida aceptar el acuerdo de licencia de Xcode, simplemente sigue las instrucciones que aparezcan en la terminal.
El Simulador Remoto de iOS para Windows
Una de las preguntas más frecuentes es si se puede desarrollar para iOS desde Windows. La respuesta es sí, pero con un matiz importante: siempre necesitarás una Mac que actúe como host de compilación. Gracias a herramientas como el Simulador Remoto de iOS para Windows, integrado en Visual Studio, la experiencia es casi transparente.

Esta funcionalidad te permite probar tus aplicaciones en un simulador de iOS que se muestra y controla desde tu PC con Windows, mientras que la compilación y ejecución real ocurren en una Mac conectada en red.
Cómo Empezar con el Simulador Remoto
- Instala la carga de trabajo .NET MAUI: El simulador remoto se instala automáticamente como parte de la carga de trabajo "Desarrollo de la interfaz de usuario de aplicaciones multiplataforma de .NET" (.NET MAUI) en Visual Studio 2022.
- Empareja Visual Studio con tu Mac: Debes conectar tu IDE a una Mac Build Host. Este proceso, conocido como "Pair to Mac", establece una conexión segura entre ambos equipos.
- Selecciona tu Simulador: En la barra de herramientas de Visual Studio, utiliza el menú desplegable "Depurar Destino" para seleccionar "iOS Simulators" y elige un dispositivo específico de la lista.
- Ejecuta tu Aplicación: Presiona el botón verde de inicio. Visual Studio compilará la aplicación en la Mac, iniciará el simulador remoto en tu ventana de Windows y desplegará la app en él.
Características Clave
La ventana del simulador en Windows cuenta con una barra de herramientas muy útil:
- Home: Simula el botón de inicio físico.
- Lock: Bloquea la pantalla del simulador.
- Take Screenshot: Guarda una captura de pantalla en tu carpeta de Imágenes.
- Settings: Permite activar el teclado de hardware y resetear el contenido del simulador.
- Other options: Accede a funciones como la rotación de pantalla, gestos de agitación y reinicio.
Además, es compatible con interacciones táctiles si tu PC con Windows tiene una pantalla táctil, y la entrada de un lápiz óptico de Windows se traduce como la entrada de un Apple Pencil, lo que lo hace muy potente para pruebas de interfaz.
Uso Avanzado: Control desde la Terminal
Para los desarrolladores que prefieren la línea de comandos para automatizar tareas y tener un control más granular, existen herramientas como ios-sim. Este paquete de npm te permite instalar, lanzar y gestionar aplicaciones en el simulador directamente desde la terminal.

Primero, instálalo globalmente:
npm install -g ios-sim
A continuación, puedes usar una serie de comandos para interactuar con el simulador. Aquí tienes una tabla con los más comunes:
| Comando | Descripción |
|---|---|
ios-sim install [ruta_app] | Instala una aplicación en el simulador sin ejecutarla. |
ios-sim launch [ruta_app] | Lanza una aplicación previamente instalada o la instala y la lanza. |
ios-sim showdevicetypes | Muestra una lista de todos los tipos de dispositivos disponibles que se pueden simular (ej. iPhone 14 Pro, iPad Air). |
ios-sim showsdks | Lista todas las versiones del SDK de iOS disponibles en tu sistema. |
ios-sim start | Inicia el simulador sin ninguna aplicación específica. |
Estos comandos son especialmente útiles en flujos de trabajo de Integración Continua (CI/CD) o para crear scripts personalizados.
Probando Funcionalidades: Simulación de Ubicación
El simulador no es solo una pantalla estática; puede emular varias condiciones y entradas de hardware. Una de las más potentes es la simulación de ubicación, fundamental para juegos o aplicaciones que dependen del GPS.
Dentro del simulador en ejecución (en macOS), puedes ir al menú Features > Location para acceder a varias opciones:
- None: No se proporciona ninguna ubicación. Útil para probar cómo reacciona tu app en este escenario.
- Custom Location: Te permite introducir una latitud y longitud específicas.
- Apple: Fija la ubicación en la sede de Apple en Cupertino.
- City Bicycle Ride: Simula un paseo en bicicleta por una ruta predefinida en Cupertino.
- City Run: Simula una carrera a pie por una ruta predefinida.
- Freeway Drive: Simula un viaje en coche por autopista, ideal para probar la lógica de seguimiento de viajes que requieren velocidades más altas y una duración prolongada.
Para que una prueba de viaje sea válida, por ejemplo, para un SDK de seguimiento, a menudo se requiere que dure más de 60 segundos y supere una velocidad de 30 km/h. Con estas herramientas, puedes cumplir esos requisitos sin moverte de tu escritorio.

Limitaciones y Solución de Problemas
Aunque es una herramienta fantástica, el simulador tiene sus limitaciones y, a veces, presenta problemas. Es crucial conocerlos para no perder tiempo en la depuración.
Limitaciones de Hardware
El simulador no puede replicar el siguiente hardware:
- Entrada de audio (micrófono)
- Barómetro
- Cámara (frontal o trasera)
- Sensores de movimiento (acelerómetro y giroscopio)
Para probar funcionalidades que dependan de este hardware, necesitarás un dispositivo físico.
Solución de Problemas Comunes
- El CLI se queda atascado al abrir el simulador: A veces, el comando de apertura no responde. La solución es abrir la aplicación "Simulator" manualmente desde tu carpeta de Aplicaciones (o con
open -a Simulatoren la terminal) y luego, desde su menú, seleccionar File > Open Simulator y elegir el dispositivo deseado. - El simulador remoto de Windows se queda en "Connecting to Mac...": Este bucle suele deberse a una configuración corrupta de Xcode en la Mac. Para solucionarlo, cierra Xcode en la Mac, elimina la carpeta
~/Library/Developer/CoreSimulator/Devicesy ejecutakillall -9 com.apple.CoreSimulator.CoreSimulatorServiceen la terminal de la Mac. - La app no se abre dentro del simulador: La primera vez que instalas una app como Expo Go, iOS te pedirá permiso para abrirla. A veces, este diálogo no aparece hasta que interactúas con la pantalla del simulador (haciendo clic o arrastrando).
Preguntas Frecuentes (FAQ)
¿Puedo usar el simulador de iOS en Windows sin una Mac?
No. Es un requisito indispensable tener una Mac en la red que actúe como host de compilación y ejecución. El simulador remoto para Windows solo transmite la interfaz y los controles, pero todo el trabajo pesado lo realiza la Mac.

¿Qué hardware no funciona en el simulador?
La cámara, el micrófono, el barómetro, el acelerómetro y el giroscopio no están disponibles en el simulador. Cualquier funcionalidad que dependa de ellos debe ser probada en un dispositivo físico.
¿Cómo puedo probar una ruta GPS en mi aplicación?
Utiliza las funciones de simulación de ubicación integradas. En el menú del simulador, ve a Features > Location y selecciona una de las rutas predefinidas como "Freeway Drive" o "City Run", o establece una ubicación personalizada.
El simulador se queda "cargando" y no abre. ¿Qué hago?
Intenta abrir la aplicación Simulator manualmente desde tu carpeta de Aplicaciones o usando open -a Simulator en la terminal. Una vez abierta, selecciona el dispositivo que necesitas desde el menú File > Open Simulator. Esto suele resolver los problemas de enlace con las herramientas de línea de comandos.
Si quieres conocer otros artículos parecidos a Guía Completa del Simulador de iOS para Devs puedes visitar la categoría Juegos.
