Imagen genérica del sistema

Una imagen genérica del sistema (GSI) es una implementación de Android en estado puro que incluye código del Proyecto de código abierto de Android (AOSP) sin modificar y que se puede ejecutar en una gran variedad de dispositivos Android.

Compatibilidad de GSI en dispositivos

Figura 1: Compatibilidad de GSI en varios dispositivos

A partir de Android 9 (API nivel 28), las imágenes genéricas del sistema (GSI) están disponibles para los desarrolladores de apps durante todo el ciclo de lanzamiento de Android. Como desarrollador de apps, puedes instalar y ejecutar las últimas GSI de Android en una gran variedad de dispositivos Android existentes y en diferentes etapas de lanzamiento del sistema operativo Android, incluidas las fases de vistas previas y versiones Beta, para realizar pruebas de apps. De esta manera, tu app obtiene una cobertura de pruebas más amplia, con mucha más antelación que antes:

  • Más cobertura de pruebas en dispositivos reales
  • Más tiempo para solucionar problemas de compatibilidad de apps
  • Más oportunidades para solucionar problemas de incompatibilidad en SO Android informados por desarrolladores de apps

Nota: Deberías instalar una versión de GSI posterior a la versión de Android actualmente instalada en un dispositivo.

El proyecto de GSI ayuda a mejorar el ecosistema de Android al proporcionar más formas de mejorar la calidad del sistema operativo y de la app antes de la próxima versión del sistema operativo. El proyecto también es de código abierto.

GSI incluye funcionalidades esenciales del sistema en todos los dispositivos que ejecutan Android 9 y versiones posteriores; en otras palabras, GSI no incluye las personalizaciones de los fabricantes de dispositivos. Es posible que veas comportamientos distintos en los siguientes casos:

  • Interacciones que involucran la IU
  • Flujos de trabajo que requieren nuevas funciones de hardware

Cómo verificar el cumplimiento del dispositivo

Las GSI solo funcionan en dispositivos que tienen las siguientes características:

  • Tienen el bootloader desbloqueado.
  • Son totalmente compatibles con Treble.
  • Se lanzaron con Android 9 (API nivel 28) o versiones posteriores. Es posible que los dispositivos que se actualizaron a Android 9 desde una versión anterior no sean compatibles con las GSI.

Para verificar si tu dispositivo puede usar GSI y para saber qué versión de SO de GSI debes instalar, haz lo siguiente:

  1. Ejecuta el siguiente comando para corroborar si es compatible con Treble:

    adb shell getprop ro.treble.enabled

    Si la respuesta es false, el dispositivo no es compatible con GSI y no debes continuar con la instalación. Si es true, ve al próximo paso.

  2. Ejecuta el siguiente comando para verificar si es compatible con varias versiones:

    adb shell cat /system/etc/ld.config.version_identifier.txt \
        | grep -A 20 "\[vendor\]"

    En el resultado, busca namespace.default.isolated en la sección [vendor].

    Si el valor de ese atributo es true, significa que el dispositivo es totalmente compatible con el kit de desarrollo nativo del proveedor (VNDK) y que puede usar cualquier versión del sistema operativo (SO) de GSI poserior a la versión del SO del dispositivo. Elige la más reciente.

    Si el valor del atributo es false, significa que el dispositivo no cumple con todos los requisitos necesarios del VNDK y que solo puede usar la versión de GSI que coincida con la del SO del dispositivo. Por ejemplo, un dispositivo con Android 9 (API versión 28) que no cumple con los requisitos del VNDK solo puede cargar una imagen de GSI de Android 9.

  3. El tipo de arquitectura de CPU de GSI debe coincidir con la del dispositivo. Ejecuta el siguiente comando a fin de obtener la arquitectura de CPU correcta para la imagen de GSI:

    adb shell getprop ro.product.cpu.abi

    Utiliza el resultado para ver qué imagen de GSI debes instalar en el dispositivo. Por ejemplo, en un Pixel 3, el resultado indicaría que la arquitectura de CPU es arm64-v8a. Por lo tanto, deberías usar el tipo arm64.

Cómo descargar imágenes de GSI

Los OEM no deben usar estas versiones de GSI para ejecutar y enviar pruebas de cumplimiento. Los OEM deben seguir consultando sus canales de comunicación existentes, como sus administradores técnicos de cuentas, para actividades relacionadas con pruebas de cumplimiento.

Hay algunas maneras de conseguir GSI según las necesidades de desarrollo:

  • Para GSI de vista previa de Android 11 y Android 10 con GMS, realiza las descargas correspondientes desde la página de versiones de GSI.
  • Para imágenes de GSI previamente compiladas sin aplicaciones de GMS, descárgalas desde el sitio de AOSP de CI.
  • Para compilar tu GSI de Android 10 y Android 9 sin GMS, descarga el código fuente de AOSP.

Cómo instalar imágenes de GSI

Nota: Si tu dispositivo adoptó el inicio verificado de Android (AVB), descarga y, luego, instala la siguiente imagen para inhabilitar el AVB antes de instalar una GSI: vbmeta.img.

La instalación de GSI depende del dispositivo. Consulta al fabricante del dispositivo para conocer las herramientas y los procedimientos exactos. Para Pixel 3 y dispositivos más nuevos, hay varias formas de instalación:

  • Para instalar manualmente imágenes de GSI, consulta Cómo instalar GSI.
  • Con la actualización dinámica de sistema (DSU) para dispositivos que ya ejecutan Android 10, consulta el sitio de actualización dinámica del sistema.
  • Envíanos tus comentarios

    Las imágenes de GSI permiten validar apps en Android. Agradecemos tus comentarios sobre las imágenes, las herramientas y el proceso de habilitación de GSI en tu dispositivo.

    Para sugerir funciones o informar errores, utiliza el componente exclusivo para el seguimiento de problemas.

    Recursos adicionales