Un dispositivo virtual de Android (AVD) es una configuración que define las características de un teléfono o una tablet Android, o de un dispositivo Wear OS, Android TV o Automotive OS, que deseas simular en Android Emulator. El Administrador de dispositivos es una herramienta que puedes iniciar desde Android Studio, y te permite crear y administrar AVD.
Para abrir el Administrador de dispositivos nuevo, realiza una de las siguientes acciones:
- En la pantalla de bienvenida de Android Studio, selecciona More Actions > Virtual Device Manager.
- Después de abrir un proyecto, selecciona View > Tool Windows > Device Manager en la barra de menú principal, haz clic en + y, luego, en Create Virtual Device.
Después de crear los dispositivos, podrás ver una lista de todos los dispositivos en el panel del Administrador de dispositivos.
Si quieres usar dispositivos virtuales para ejecutar tus pruebas de instrumentación automatizadas de una manera escalable y autoadministrada, considera usar dispositivos administrados por Gradle.
Acerca de los AVD
Un AVD contiene un perfil de hardware, una imagen del sistema, un área de almacenamiento y una máscara, entre otras propiedades.
Te recomendamos que crees un AVD para cada imagen del sistema que tu app pueda llegar a admitir según la configuración de <uses-sdk>
de tu manifiesto.
Perfil de hardware
El perfil de hardware define las características de un dispositivo que se envía desde la fábrica. El Administrador de dispositivos incluye algunos perfiles de hardware precargados, como los de los dispositivos Pixel, que puedes definir o personalizar cuando sea necesario.
Una definición del dispositivo etiquetada con el logotipo de Google Play en la columna Play Store incluye la app de Google Play Store y acceso a los Servicios de Google Play, incluida la pestaña Google Play del diálogo Extended controls, que proporciona un botón práctico para actualizar los Servicios de Google Play en el dispositivo.
Los dispositivos con este logotipo y un tipo de dispositivo "Teléfono" también cumplen con CTS y pueden usar imágenes del sistema que incluyan la app de Play Store.
Imágenes del sistema
Una imagen del sistema etiquetada con las APIs de Google incluye acceso a los Servicios de Google Play.
En la pestaña Recommended, aparece una lista de imágenes del sistema recomendadas. En las otras pestañas, se incluye una lista más completa. En el panel derecho, se describe la imagen del sistema seleccionada.
Si ves un ícono de descarga junto a una imagen del sistema, significa que aún no está instalada en tu máquina de desarrollo. Haz clic en el ícono para descargar la imagen del sistema. Para descargar imágenes del sistema, debes tener conexión a Internet.
El nivel de API del dispositivo de destino es importante, ya que tu app no se ejecuta en una imagen del sistema con un nivel de API inferior al que necesita, según se especifica en el atributo minSdk
del archivo de manifiesto de la app. Para obtener más información sobre la relación entre el nivel de API del sistema y minSdk
, consulta Establece la versión de tu app.
Si tu app declara un elemento <uses-library>
en el archivo de manifiesto, requerirá una imagen del sistema en la que se encuentre esa biblioteca externa.
Para ejecutar tu app en un emulador, crea un AVD que incluya la biblioteca obligatoria. Si lo haces, es posible que debas usar un componente complementario para la plataforma de AVD (por ejemplo, el complemento de las APIs de Google contiene la biblioteca de Google Maps).
Para garantizar la seguridad de las apps y una experiencia uniforme con dispositivos físicos, las imágenes del sistema en las que se incluye Google Play Store se firman con una clave de lanzamiento, por lo que no puedes obtener privilegios elevados (de administrador) con esas imágenes.
Si solicitas privilegios elevados (de administrador) para solucionar un problema de tu app, puedes usar imágenes del sistema del Proyecto de código abierto de Android (AOSP), que no incluyen apps ni servicios de Google. Luego, puedes usar los comandos adb root
y adb unroot
para alternar entre los privilegios normales y elevados:
% adb shell emu64a:/ $ emu64a:/ $ exit % adb root restarting adbd as root % adb shell emu64a:/ # emu64a:/ # exit % adb unroot restarting adbd as non root % adb shell emu64a:/ $ emu64a:/ $ exit %
Área de almacenamiento
El AVD tiene un área dedicada al almacenamiento en tu máquina de desarrollo. En ella, se almacenan los datos del usuario que están en el dispositivo, como los parámetros de configuración y las apps instaladas, y una tarjeta SD emulada. Si es necesario, puedes usar el Administrador de dispositivos para borrar los datos del usuario, de modo que el dispositivo tenga los mismos datos que tendría si fuese nuevo.
Máscara
La máscara de emulador especifica la apariencia de un dispositivo. El Administrador de dispositivos incluye algunas máscaras predefinidas, pero también puedes definir las tuyas propias o usar otras proporcionadas por terceros.
AVD y características de apps
Asegúrate de que en la definición de AVD se incluyan las características de dispositivo de las cuales depende tu app. Consulta las secciones sobre las propiedades de perfiles de hardware y las propiedades de AVD para obtener listas de características que puedes definir en tus AVD.
Cómo crear un AVD
Para crear un AVD nuevo:
- Abre el Administrador de dispositivos.
- Haz clic en Create device.
Aparecerá la ventana Select Hardware.
Ten en cuenta que solo algunos perfiles de hardware incluyen Play Store. Esos perfiles son totalmente compatibles con CTS y pueden usar imágenes del sistema que incluyan la app de Play Store.
- Selecciona un perfil de hardware y luego haz clic en Next.
Si no ves el perfil de hardware que deseas, puedes crear o importar uno, como se describe en otras secciones de esta página.
Aparecerá la ventana System Image.
- Selecciona la imagen del sistema para un nivel de API determinado y haz clic en Next.
- Modifica las propiedades de AVD según sea necesario y, luego, haz clic en Finish.
Haz clic en Show Advanced Settings para que se muestren más parámetros de configuración, como la máscara.
Aparecerá la ventana Verify Configuration.
El nuevo AVD aparecerá en la pestaña Virtual del Administrador de dispositivos y en el menú del dispositivo de destino.
Para crear un AVD a partir de una copia:
- Desde la pestaña Virtual del Administrador de dispositivos, haz clic en Menu y elige Duplicate.
Aparecerá la ventana Verify Configuration.
- Haz clic en Previous si necesitas hacer cambios en las ventanas System Image o Select Hardware.
- Realiza los cambios necesarios y luego haz clic en Finish.
El AVD aparecerá en la pestaña Virtual del Administrador de dispositivos.
Cómo crear un perfil de hardware
El Administrador de dispositivos proporciona perfiles de hardware predefinidos para dispositivos comunes de modo que puedas agregarlos fácilmente a tus definiciones de AVD. Si debes definir un dispositivo diferente, puedes crear un perfil de hardware nuevo.
Puedes establecer un perfil de hardware nuevo desde el principio o copiar uno como punto de partida. No es posible editar perfiles de hardware precargados.
Para crear un perfil de hardware nuevo desde el comienzo:
- En la ventana Select Hardware, haz clic en New Hardware Profile.
En la ventana Configure Hardware Profile, modifica las propiedades de perfiles de hardware según sea necesario.
- Haz clic en Finish.
El perfil de hardware nuevo aparecerá en la ventana Select Hardware. Puedes crear un AVD que use el perfil de hardware haciendo clic en Next o puedes volver a la pestaña Virtual o el menú del dispositivo de destino haciendo clic en Cancel.
Para crear un perfil de hardware a partir de una copia como punto de partida:
- En la ventana Select Hardware, selecciona un perfil de hardware y haz clic en Clone Device, o haz clic con el botón derecho en un perfil de hardware y selecciona Clone.
- En la ventana Configure Hardware Profile, modifica las propiedades de perfiles de hardware según sea necesario.
- Haz clic en Finish.
El perfil de hardware nuevo aparecerá en la ventana Select Hardware. Puedes crear un AVD que use el perfil de hardware haciendo clic en Next o puedes volver a la pestaña Virtual o el menú del dispositivo de destino haciendo clic en Cancel.
Cómo editar AVD existentes
Puedes realizar las siguientes operaciones en un AVD desde la pestaña Virtual del Administrador de dispositivos:
- Para editar un AVD, haz clic en Edit this AVD y realiza los cambios.
- Para borrar un AVD, haz clic en Menu y selecciona Delete.
- Para mostrar los archivos INI y IMG asociados del AVD en el disco, haz clic en Menu y selecciona Show on Disk.
- Si deseas ver los detalles de configuración del AVD que puedes incluir en los informes de errores para el equipo de Android Studio, haz clic en Menu y selecciona View Details.
Cómo editar perfiles de hardware existentes
No puedes editar ni borrar perfiles de hardware precargados, pero puedes realizar las siguientes operaciones en otros perfiles de hardware desde la ventana Select Hardware:
- Para editar un perfil de hardware, selecciónalo y haz clic en Edit Device. También puedes hacer clic con el botón derecho en un perfil de hardware y seleccionar Edit. Luego, realiza las modificaciones.
- Para borrar un perfil de hardware, haz clic con el botón derecho en él y selecciona Delete.
Cómo ejecutar y detener un emulador, y borrar datos
En la pestaña Virtual, puedes realizar las siguientes operaciones en un emulador:
- Para ejecutar un emulador que use un AVD, haz clic en Launch .
- Para detener un emulador, haz clic en Menu y selecciona Stop.
- Para borrar los datos de un emulador, haz clic en Menu y selecciona Wipe Data.
Cómo importar y exportar perfiles de hardware
En la ventana Select Hardware, puedes importar y exportar perfiles de hardware de la siguiente manera:
- Para importar un perfil de hardware, haz clic en Import Hardware Profiles y selecciona el archivo en formato XML en tu computadora que contenga la definición.
- Para exportar un perfil de hardware, haz clic con el botón derecho en él y selecciona Export. Especifica la ubicación en la que deseas almacenar el archivo en formato XML que contiene la definición.
Propiedades de AVD
La configuración de AVD especifica la interacción entre la máquina de desarrollo y el emulador, así como las propiedades que deseas anular en el perfil de hardware. Puedes especificar las siguientes propiedades para las configuraciones de AVD en la ventana Verify Configuration. Las propiedades etiquetadas (Advanced) solo se muestran si haces clic en Show Advanced Settings.
Las propiedades de configuración del AVD anulan las propiedades del perfil de hardware, y ambas son anuladas por las propiedades del emulador que estableces mientras este se encuentra en funcionamiento.
Propiedad de AVD | Descripción |
---|---|
AVD Name | Introduce un nombre para el AVD. Puede contener mayúsculas o minúsculas, números, puntos, guiones bajos, paréntesis, guiones y espacios. El nombre del archivo que contiene la configuración de AVD deriva del nombre de este. |
AVD ID (Advanced) | Visualiza el ID del AVD. El ID del AVD deriva del nombre del AVD. Puedes usarlo para hacer referencia al AVD desde la línea de comandos. |
Hardware Profile | Haz clic en Change para seleccionar un perfil de hardware diferente en la ventana Select Hardware. |
System Image | Haz clic en Change para seleccionar una imagen del sistema diferente en la ventana System Image. Se requiere una conexión activa de Internet para descargar una imagen nueva. |
Startup orientation | Selecciona una opción para la orientación inicial del emulador:
Se habilita una opción solo si se admite en el perfil de hardware. Si se ejecuta el AVD en el emulador, puedes modificar la orientación si el perfil de hardware admite tanto el formato vertical como el horizontal. |
Camera (Advanced) | Selecciona una opción para cualquier cámara habilitada. Los parámetros de configuración de Emulated y VirtualScene producen una imagen generada por software, mientras que la configuración de Webcam usa la cámara web de tu computadora de desarrollo para tomar una foto. Las opciones de cámara solo están disponibles si se admite una cámara en el perfil de hardware. No están disponibles para Wear OS, Android TV ni Google TV. |
Network: Speed (Advanced) | Selecciona un protocolo de red para determinar la velocidad de la transferencia de datos:
|
Network: Latency (Advanced) | Selecciona un protocolo de red para establecer el tiempo necesario para que el protocolo transfiera un paquete de datos de un punto a otro. |
Emulated Performance: Graphics | Selecciona el modo en que se representan los gráficos en el emulador:
|
Emulated Performance: Boot option (Advanced) |
Selecciona cómo se inicia el AVD: |
Emulated Performance: Multi-Core CPU (Advanced) | Selecciona la cantidad de núcleos del procesador de tu computadora que quieres usar para el emulador. El uso de más núcleos acelera el emulador. |
Memory and Storage: RAM (Advanced) | Anula la cantidad de memoria RAM en el dispositivo que estableció el fabricante del hardware. El aumento de tamaño ocupa más recursos de tu computadora, pero admite una operación del emulador más rápida. Introduce un tamaño de memoria RAM y selecciona las unidades: B (bytes), KB (kilobytes), MB (megabytes), GB (gigabytes) o TB (terabytes). |
Memory and Storage: VM Heap (Advanced) | Anula el tamaño de montón de VM que estableció el fabricante del hardware. Introduce un tamaño de montón y selecciona las unidades: B (bytes), KB (kilobytes), MB (megabytes), GB (gigabytes) o TB (terabytes). |
Memory and Storage: Internal Storage (Advanced) | Anula la cantidad de espacio de memoria no extraíble disponible en el dispositivo que estableció el fabricante del hardware. Introduce un tamaño y selecciona las unidades: B (bytes), KB (kilobytes), MB (megabytes), GB (gigabytes) o TB (terabytes). |
Memory and Storage: SD Card (Advanced) | Especifica el espacio disponible de memoria extraíble para almacenar datos en el dispositivo. Para usar una tarjeta SD administrada por Android Studio, selecciona Studio-managed, introduce un tamaño y selecciona las unidades: B (bytes), KB (kilobytes), MB (megabytes), GB (gigabytes) o TB (terabytes). Se recomiendan como mínimo 100 MB para usar la cámara. Para administrar el espacio en un archivo, selecciona External file y haz clic en … para especificar el archivo y la ubicación. Para obtener más información, consulta |
Device Frame: Enable Device Frame | Habilita un marco alrededor de la ventana del emulador que reproduzca la apariencia de un dispositivo real. |
Custom Skin Definition (Advanced) | Selecciona una máscara que controle la apariencia del dispositivo cuando se muestre en el emulador. Especificar un tamaño de pantalla demasiado grande para la resolución puede hacer que la pantalla quede cortada y no puedas verla completa. Para obtener más información, consulta la sección Cómo crear una máscara de emulador. |
Keyboard: Enable Keyboard Input (Advanced) | Selecciona esta opción para usar el teclado de hardware para interactuar con el emulador. Esta opción está inhabilitada para Wear OS y Android TV. |
Propiedades de perfiles de hardware
Puedes especificar las siguientes propiedades de los perfiles de hardware en la ventana Configure Hardware Profile. Las propiedades de configuración del AVD anulan las propiedades del perfil de hardware, y ambas son anuladas por las propiedades del emulador que estableces mientras este se encuentra en funcionamiento.
No se pueden editar los perfiles de hardware predefinidos que se incluyen con el Administrador de dispositivos. Sin embargo, puedes copiar los perfiles y editar las copias.
Algunas propiedades están inhabilitadas para algunos tipos de dispositivo. Por ejemplo, la propiedad "Round" solo está disponible en dispositivos Wear OS.
Propiedad del perfil de hardware | Descripción |
---|---|
Device Name | Introduce un nombre para el perfil de hardware. Puede contener mayúsculas o minúsculas, números, puntos, guiones bajos, paréntesis y espacios. El nombre del archivo que contiene el perfil de hardware deriva del nombre de este último. |
Device Type | Selecciona una de las siguientes opciones:
|
Screen: Screen Size | Especifica el tamaño físico de la pantalla, en pulgadas, medidas en diagonal. Si el tamaño es superior al de la pantalla de tu computadora, se reduce en el inicio. |
Screen: Screen Resolution | Introduce una medida de ancho y alto en píxeles para especificar el número total de píxeles en la pantalla simulada. |
Screen: Round | Selecciona esta opción si el dispositivo tiene una pantalla redonda, como en el caso de algunos dispositivos Wear OS. |
Memory: RAM | Introduce un tamaño de memoria RAM para el dispositivo y selecciona las unidades: B (bytes), KB (kilobytes), MB (megabytes), GB (gigabytes) o TB (terabytes). |
Input: Has Hardware Buttons (Back/Home/Menu) | Selecciona esta opción si tu dispositivo tiene botones de navegación de hardware. Anula esta selección si estos botones se implementan únicamente en software. Si seleccionas esta opción, los botones no aparecerán en la pantalla. Puedes usar el panel lateral del emulador para "presionar" los botones en cualquiera de los casos. |
Input: Has Hardware Keyboard | Selecciona esta opción si tu dispositivo tiene un teclado de hardware. Anula la selección si no lo tiene. Si seleccionas esta opción, no aparece un teclado en la pantalla. En cualquiera de los casos, puedes usar el teclado de tu computadora para transmitir la pulsación de teclas al emulador. |
Input: Navigation Style | Selecciona una de las siguientes opciones:
Estas opciones son para controles de hardware en el propio dispositivo. Sin embargo, los eventos enviados al dispositivo a través de un controlador externo son los mismos. |
Supported Device States | Selecciona una o ambas opciones:
Debes seleccionar al menos una opción. Si seleccionas ambas, puedes intercambiarlas en el emulador. |
Cameras | Para habilitar la cámara, selecciona una o ambas opciones:
Si la cámara está habilitada, puedes usar la cámara web de tu máquina de desarrollo o una foto proporcionada por el emulador para simular que tomas una foto, según las opciones que selecciones en la configuración del AVD. |
Sensors: Accelerometer | Selecciona esta opción si el dispositivo cuenta con hardware que le permita determinar su orientación. |
Sensors: Gyroscope | Selecciona esta opción si el dispositivo cuenta con hardware que detecte rotación o giros. Combinado con un acelerómetro, un giroscopio puede proporcionar una detección de orientación más fluida y admitir un sistema de orientación de seis ejes. |
Sensors: GPS | Selecciona esta opción si el dispositivo cuenta con hardware compatible con el sistema de posicionamiento global (GPS) de navegación satelital. |
Sensors: Proximity Sensor | Selecciona esta opción si el dispositivo cuenta con hardware que determina si se encuentra cerca del rostro del usuario durante una llamada telefónica para inhabilitar las entradas de la pantalla. |
Default Skin | Selecciona una máscara que controle la apariencia del dispositivo cuando se muestre en el emulador. Especificar un tamaño de pantalla demasiado grande para la resolución puede hacer que la pantalla quede recortada y no puedas verla por completo. Para obtener más información, consulta la siguiente sección sobre Cómo crear una máscara de emulador. |
Cómo crear una máscara de emulador
Una máscara de emulador de Android es un grupo de archivos que definen los elementos visuales y de control de una pantalla de emulador. Si las definiciones de máscaras disponibles en los parámetros de configuración de AVD no cumplen con tus requisitos, puedes crear tu propia definición de máscara personalizada y, luego, aplicarla a tu AVD.
Cada máscara de emulador contiene:
- Un archivo
hardware.ini
- Archivos de diseño para orientaciones compatibles y la configuración física
- Archivos de imagen para elementos de pantalla (por ejemplo, fondo, teclas y botones)
Para crear y usar una máscara personalizada, haz lo siguiente:
- Crea un directorio en el que puedas guardar los archivos de configuración de la máscara.
- Define la apariencia visual de la máscara en un archivo de texto llamado
layout
. Este archivo definirá muchas características de la máscara, como el tamaño y los recursos de imagen para botones específicos. Por ejemplo:parts { device { display { width 320 height 480 x 0 y 0 } } portrait { background { image background_port.png } buttons { power { image button_vertical.png x 1229 y 616 } } } ... }
- Agrega archivos de mapas de bits de las imágenes del dispositivo en el mismo directorio.
- Especifica configuraciones adicionales del dispositivo específicas de hardware en un archivo INI para los parámetros de configuración del dispositivo, como
hw.keyboard
yhw.lcd.density
. - Guarda los archivos en la carpeta de máscaras y selecciona el archivo de almacenamiento como una máscara personalizada.
Para obtener información más detallada sobre la creación de máscaras de emulador, consulta la Especificación de archivos de máscaras de Android Emulator en el código fuente de las herramientas.