---
id: "sistema.emulador-android"
titulo: "Instalar, iniciar y leer una app en el Android emulado"
resumo: "Instale un APK, inicie la app por paquete, ajuste permisos y lea la pantalla y los logs del Android emulado."
idioma: "es"
tipo: "tutorial"
categoria: "ambientes"
aplicavelDesde: "0.0.16"
capabilities: ["devices.android.apps", "devices.android.diagnostics"]
estadoEditorial: "aprovado"
nivelEvidencia: "artefato-distribuido"
refFonte: "27574c339b58316408f6be2d62169d59041d07bf"
revisaoFonte: "2026-09-24"
revisor: "mantenedor (v1, 2026-10-03)"
rota: "/docs/es/sistema/emulador-android/"
fonte: "pt-br/sistema/emulador-android.md"
caminhoPublico: "docs/publica/es/sistema/emulador-android.md"
hashFonte: "sha256:d0e4fba9af6f76aaddb5b3bf7368f120b9094f9e806a6bedc5b215205a4bb7d5"
hashDestaPagina: "sha256:455f4459b83c4aca20b0a8071a9724912bd7e05654ca631a1b7e922d4472069c"
traducaoAssistidaPorIA: true
traducaoDesatualizada: false
corpoRetido: false
---
<!-- traducao-assistida-por-ia: idioma=ES fonte=pt-br/sistema/emulador-android.md fonteHash=sha256:d0e4fba9af6f76aaddb5b3bf7368f120b9094f9e806a6bedc5b215205a4bb7d5 estado=atual -->

Este es el camino de Android: poner un APK en el dispositivo emulado, abrir la app, tocar los permisos de
runtime y leer lo que está pasando — el árbol de accesibilidad y logcat. Son los pasos que reemplazan
"instalar por Android Studio" y "mirar la pantalla" cuando el dispositivo está dentro de Elyra.

## Requisitos

- Un dispositivo **Android** emulado activo para el workspace. Vea [Emulador móvil](/docs/es/sistema/emulador/).
- El APK ya compilado en disco, si va a instalar.
- El paquete de la app — y la activity, si no es la predeterminada.

## Pasos

1. **Instale el APK.** Indique la ruta del archivo y el objetivo:

   ```bash
   elyra emulator install ./app-debug.apk --device emulator-5554 --json
   ```

   Use `--reinstall` para **reemplazar una instalación existente** del mismo paquete:

   ```bash
   elyra emulator install ./app-debug.apk --reinstall --json
   ```

2. **Inicie la app por paquete**, con la activity cuando importe:

   ```bash
   elyra emulator launch com.acme.app --activity .MainActivity --json
   ```

3. **Conceda o revoque un permiso de runtime.** El orden es `grant|revoke`, luego el paquete, luego el
   permiso:

   ```bash
   elyra emulator permissions grant com.acme.app android.permission.CAMERA --json
   elyra emulator permissions revoke com.acme.app android.permission.CAMERA --json
   ```

4. **Restablezca todas las concesiones de runtime** de una vez, cuando quiera un estado limpio. `reset`
   no recibe paquete ni permiso:

   ```bash
   elyra emulator permissions reset --json
   ```

5. **Lea la pantalla por el árbol de accesibilidad.** `ax` vuelca el árbol de uiautomator, que es la
   forma de saber qué está visible sin captura de pantalla:

   ```bash
   elyra emulator ax --device emulator-5554 --json
   ```

6. **Capture un fragmento del log.** `logcat` hace un volcado puntual, con límite de líneas y filtros por
   tag:

   ```bash
   elyra emulator logcat --lines 200 --device emulator-5554 --json
   elyra emulator logcat --filters "MyTag:D" --filters "*:S" --lines 200 --json
   ```

   Cada filtro es `TAG:PRIORITY`, con prioridad entre `V D I W E F S` y `*` como tag comodín.

## Resultado

- El APK queda instalado en el dispositivo emulado y la app abre por paquete y activity.
- El estado de los permisos de runtime queda bajo su control por los comandos, sin pasar por la interfaz
  de Android.
- El árbol de accesibilidad y las líneas de log dicen lo que la app publicó y registró.

## Límites

- **Estos comandos son exclusivos de Android.** En un Simulator de iOS son rechazados con
  `emulator_unsupported`. En iOS, `install` y `launch` quedan a cargo de las herramientas de Apple, fuera
  de Elyra.
- **Un APK no confiable altera el dispositivo.** Instalar es ejecutar código de terceros en el
  dispositivo: instale solo lo que usted compiló o confía, y prefiera un AVD desechable para eso.
- **`reset` borra todas las concesiones de runtime que usted dio** — no solo la última. Es el camino para
  volver al estado inicial y también el camino para romper una app que dependía de ellas.
- **El árbol de accesibilidad y los logs pueden contener datos personales o tokens.** Redacte antes de
  compartir: nada de esto se escribió para volverse un adjunto público.
- **Lea el campo de resultado, no solo la ausencia de error.** `install` responde `installed`, `launch`
  responde `launched` y `permissions` responde `applied`; la variante falsa trae el motivo.
- **El orden de los permisos es la trampa común**: intercambiar paquete y permiso es rechazado, y el
  rechazo no dice cuál de los dos está fuera de lugar.
- **No hay verbo para desinstalar una app** en esta familia. `exec` es un passthrough bruto, corre en el
  shell del dispositivo y devuelve solo el stdout — y puede cambiar el estado del simulador.
- **No hay captura de pantalla ni copia de archivos del dispositivo** por aquí.

## Recuperación y limpieza segura

- **La instalación falló** — relea el motivo en la respuesta; confirme que la ruta del APK existe en el
  host de ejecución y que el objetivo es un dispositivo Android.
- **La app no abrió** — revise el paquete y la activity; sin `--activity`, el paquete debe resolver la
  activity predeterminada.
- **El permiso fue rechazado** — confirme el orden `grant|revoke`, el paquete y el nombre completo del
  permiso (`android.permission.<NAME>`).
- **Deshacer una concesión** — `permissions revoke` para un permiso específico; `permissions reset` para
  todas.
- **Cerrar el auxiliar** — `elyra emulator kill` para liberar la sesión dejando el dispositivo encendido,
  o `elyra emulator shutdown` para cerrarlo y apagar el dispositivo. Vea
  [Comandos del emulador](/docs/es/sistema/emulador-cli/).

## Próximos pasos

- [Comandos del emulador](/docs/es/sistema/emulador-cli/)
- [Interactuar con el dispositivo emulado](/docs/es/sistema/emulador-interacao/)
