# Automatizar un emulador Android: emuladores, nube y móvil

> Automatizar un emulador Android en Macro Automation Studio: qué emuladores detecta, las reglas del puerto adb, añadir uno por puerto, la nube y tu móvil.

Source: https://automationmacro.com/es/docs/devices (Dispositivos, updated 2026-09-05)

Automatizar un emulador Android en Macro Automation Studio (MAS) empieza por un dispositivo: un emulador Android en este ordenador, un dispositivo en la nube de MAS o, como ruta avanzada, tu propio móvil. Esta página explica cómo encuentra MAS los emuladores, cómo añades uno para automatizar un emulador Android y dónde encajan los otros dos tipos.

## Antes de empezar

- MAS está instalado y has iniciado sesión con una prueba o un plan activo. Consulta [Instalar MAS](/docs/install). MAS es una descarga gratuita para la prueba; consíguelo en la [página de descarga](/download).
- Para un emulador: el emulador está en marcha y ADB está activado en sus ajustes. Las guías de [BlueStacks](/docs/bluestacks-setup-guide), [LDPlayer](/docs/ldplayer-setup-guide), [MuMu Player](/docs/mumu-setup-guide) y [MEmu](/docs/memu-setup-guide) muestran dónde.
- Para un dispositivo en la nube: un plan con el complemento de dispositivos en la nube. Consulta [Dispositivos en la nube](/docs/cloud-devices).

## Cómo encuentra MAS el puerto adb del emulador

MAS no ejecuta `adb devices` para encontrar emuladores. Recorre los procesos en ejecución buscando nombres de emulador conocidos, lee los puertos TCP en los que escucha cada uno y conserva un puerto solo cuando está dentro del rango conocido de ese emulador. Solo cuentan los puertos enlazados a `127.0.0.1`, `0.0.0.0` o a todas las interfaces. El resultado rellena la lista **Puerto** del diálogo **Añadir nuevo dispositivo**, una entrada por puerto con el nombre del emulador al lado.

| Emulador | Nombres de proceso que busca MAS | Puertos que acepta MAS |
|---|---|---|
| BlueStacks | `HD-Player`, `BlueStacks` | De 5555 a 8500 |
| LDPlayer | `LdVBoxHeadless`, `Ld9BoxHeadless`, `dnplayer`, `LDPlayer`, `VBoxNetNAT` | Puertos impares de 5555 a 5599 |
| Nox | `NoxVMHandle` | De 62001 a 63000 |
| MEmu | `MEmuHeadless`, `MEmuHyper` | 21503 y todos los puertos terminados en 3 por encima, hasta 30000 |
| MuMu Player | `NemuHeadless`, `MuMu` | Puertos impares de 5555 a 5599, el 7555, de 16384 a 16576 o de 26624 a 27264 |

Cada instancia de emulador escucha en su propio puerto, así que dos ventanas de BlueStacks aparecen como dos entradas. Si tu emulador no está en la tabla, o escucha fuera de su rango, puedes escribir el puerto a mano.

> [!TIP]
> MAS recorre procesos, así que mantén la ventana del emulador abierta mientras lo añades. Una instancia detenida no tiene puerto que encontrar.

## Automatizar emulador Android: añadirlo como dispositivo

1. En MAS, abre **Grupos de dispositivos** y haz clic en **Crear nuevo grupo**.
2. Escribe un **Nombre** (de 3 a 255 caracteres), deja el tipo **Local** y haz clic en **Crear grupo**.
3. Abre el grupo y haz clic en **Añadir dispositivo**.
4. Escribe un **Nombre del dispositivo** de hasta 50 caracteres.
5. Elige el puerto en **Puerto**. Haz clic en **Actualizar** para volver a buscar. Si el puerto no aparece, elige **Puerto personalizado** y escríbelo (de 1024 a 65535).
6. Opcionalmente elige una **Macro de inicio**.
7. Haz clic en **Añadir dispositivo**.

La tarjeta del dispositivo muestra su puerto, su macro y su estado: Detenido, Conectando, Iniciando, En ejecución, Deteniendo o Error. **Iniciar** conecta con el emulador mediante `adb connect 127.0.0.1:<port>` y lanza la macro; **Detener** termina la ejecución. Un puerto solo puede pertenecer a un dispositivo; añadirlo dos veces falla con "Port is already in use". Para cambiar el puerto más adelante, haz clic en **Editar dispositivo**.

Varios dispositivos de un mismo grupo pueden tener macros, argumentos y perfiles de ajustes distintos, y **Iniciar todos** los ejecuta uno tras otro. Consulta [Grupos de dispositivos](/docs/device-groups).

## Dispositivos en la nube

Un dispositivo en la nube es un dispositivo Android que MAS ejecuta por ti. Lo creas en la página **Dispositivos en la nube** con **Crear**, eligiendo la versión de Android, un preajuste de pantalla y un DPI que quedan fijos durante toda la vida del dispositivo. **Iniciar** lo arranca, **Ver** abre la pantalla en directo transmitida por WebRTC y **Ejecutar** lanza una macro que sigue en marcha después de cerrar la app. Los dispositivos detenidos conservan sus datos, y una cuenta puede tener hasta 20 dispositivos en la nube por cuenta. Todo lo demás, incluidas las instalaciones de APK y las cuotas, está en la página [Dispositivos en la nube](/docs/cloud-devices).

## Tu propio móvil

> [!WARNING]
> Controlar un móvil no es una función probada de la app. Los pasos siguientes se deducen de cómo MAS se conecta a los dispositivos, pero el equipo de MAS no los ha verificado en todos los móviles. Si te fallan, pregunta en [Discord](https://discord.gg/macroautomationstudio).

MAS añade todo dispositivo local por puerto y siempre marca `127.0.0.1`. No hay pantalla de emparejamiento por USB ni de emparejamiento inalámbrico. Por tanto, un móvil solo funciona cuando su demonio adb es accesible en un puerto TCP de este ordenador. Por USB se consigue con un reenvío de puerto de adb.

1. En el móvil, activa las **Opciones de desarrollador** y la **Depuración USB**, y conecta el móvil.
2. En el ordenador, ejecuta `adb devices` y acepta el aviso de autorización en el móvil. El número de serie del móvil debe aparecer como `device`.
3. Indica al demonio adb del móvil que escuche también por TCP: `adb tcpip 5555`.
4. Reenvía un puerto local hacia él: `adb forward tcp:5580 tcp:5555`. Elige cualquier puerto local libre; 5580 es solo un ejemplo.
5. Compruébalo: `adb connect 127.0.0.1:5580` debería responder "connected".
6. En MAS, añade un dispositivo con **Puerto personalizado** en `5580`.

Mantén el móvil conectado y con la pantalla encendida. El tamaño de pantalla y el DPI vienen del móvil, así que las plantillas recortadas en un emulador no coincidirán; recórtalas desde el móvil en Asset Lab.

> [!NOTE]
> MAS inicia su propio servidor adb al conectarse. Si otra versión de adb va primero en tu PATH, los servidores se sustituyen entre sí y el reenvío se pierde. Inicia MAS primero y luego configura el reenvío con la misma versión de adb que usa MAS, o ejecuta `adb kill-server` y repite el paso 4.

La depuración inalámbrica funciona igual una vez que el móvil está emparejado y conectado con `adb connect <phone-ip>:<port>`: reenvía un puerto local al puerto adb del móvil y añade ese puerto local en MAS.

## Contrólalo desde Python

Al SDK no le importa qué tipo de dispositivo hay debajo. `mas.get_device_info()` devuelve el nombre y el tamaño de pantalla, `mas.get_screen_size()` solo el tamaño, y cada toque, deslizamiento y captura pasa por las mismas llamadas. MAS lanza los scripts con el dispositivo ya vinculado, así que no hay nada que conectar en el código. Empieza por la [introducción al SDK](/docs/sdk).

## Solución de problemas

### La lista Puerto está vacía

El emulador no está en marcha, ADB está apagado en sus ajustes o no es uno de los emuladores que MAS busca. Haz clic en **Actualizar** cuando el emulador termine de arrancar. Si sigue vacía, usa **Puerto personalizado** con el puerto que muestran los ajustes del propio emulador. Consulta [Solución de problemas de ADB](/docs/adb-troubleshooting).

### Port is already in use

Otro dispositivo de uno de tus grupos ya tiene ese puerto. Cada puerto se puede añadir una sola vez. Quita la entrada antigua o elige el puerto de la otra instancia.

### El dispositivo se queda en Conectando o acaba en Error

MAS no pudo completar `adb connect`, o el emulador rechazó el primer comando. Comprueba el puerto, confirma que ADB está activado y sigue [Solución de problemas de ADB](/docs/adb-troubleshooting).
