Una imagen genérica del sistema (GSI) es una implementación de Android en estado puro que incluye código sin modificar del Proyecto de código abierto de Android (AOSP) y que se puede ejecutar en diversos dispositivos Android.
Los desarrolladores de apps pueden instalar y ejecutar las últimas GSIs de Android para realizar pruebas en una variedad de dispositivos Android existentes y usar las GSIs de diferentes etapas de lanzamiento del SO Android, incluidas las compilaciones de la Versión preliminar para desarrolladores y la versión beta. Agregar GSIs a tus procesos de verificación y prueba puede proporcionarte algunos beneficios adicionales:
- Amplia cobertura de prueba en un conjunto más grande de dispositivos reales
- Más tiempo para solucionar problemas de compatibilidad de apps
- Más oportunidades para solucionar problemas de compatibilidad en Android que informan los desarrolladores de apps
El proyecto de GSI es de código abierto y ayuda a mejorar el ecosistema de Android, ya que proporciona más formas de optimizar la calidad de las apps y del SO antes de cada lanzamiento de Android.
![Compatibilidad de GSIs en dispositivos](https://developer.android.google.cn/static/topic/generic-system-image/images/gsi-support.png?authuser=0000&hl=es)
Las GSIs incluyen las mismas funciones principales del sistema para todos los dispositivos en los que están instaladas. En otras palabras, una GSI no incluye las personalizaciones del fabricante del dispositivo. Debido a esto, puedes encontrar diferencias de comportamiento en las siguientes situaciones:
- Interacciones que involucran a la IU
- Flujos de trabajo que requieren nuevas funciones de hardware
Cómo verificar el cumplimiento del dispositivo
Las GSIs solo pueden funcionar en dispositivos con las siguientes características:
- Tienen el bootloader desbloqueado.
- Son totalmente compatibles con Treble.
- Se lanzaron con Android 9 (nivel de API 28) o versiones posteriores. Es posible que los dispositivos actualizados a Android 9 desde una versión anterior no sean compatibles con las GSIs.
Para verificar si tu dispositivo puede usar una GSI y para saber qué versión de SO de GSI debes instalar, sigue estos pasos:
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 GSIs, y no debes continuar con la instalación. Si estrue
, ve al próximo paso.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 se puede usar cualquier versión del sistema operativo (SO) de GSI posterior a la versión del SO del dispositivo. Siempre que sea posible, usa la versión más reciente del SO de GSI.Si el valor del atributo es
false
, significa que el dispositivo no cumple con todos los requisitos necesarios del VNDK y que solo se puede usar una versión de GSI que coincida con la del SO del dispositivo. Por ejemplo, un dispositivo con Android 10 (versión de la API 29) que no cumple con los requisitos del VNDK solo puede cargar una imagen de GSI de Android 10.El tipo de arquitectura de CPU de GSI debe coincidir con la del dispositivo. Ejecuta el siguiente comando para 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 5, el resultado indicaría que la arquitectura de CPU es
arm64-v8a
. Por lo tanto, deberías usar el tipoarm64
de GSI.
Cómo descargar GSIs
Hay algunas maneras de obtener GSIs según las necesidades de desarrollo:
- Para GSIs de versión preliminar de Android y GSIs de Android con GMS, descarga las imágenes desde la página de versiones de GSI.
En el caso de las imágenes de GSI precompiladas sin aplicaciones de GMS, descarga las imágenes del sitio de CI de AOSP:
Para compilar GSIs de Android sin GMS, descarga el código fuente de AOSP y compila tus GSIs.
Cómo instalar una GSI
La instalación de una GSI depende del dispositivo. Consulta al fabricante del dispositivo para conocer las herramientas y los procedimientos exactos. En los dispositivos Google Pixel, como Pixel 3 y modelos más nuevos, hay varias formas de instalación:
- Instalar imágenes de GSI manualmente: consulta el artículo Requisitos para instalar GSIs
- Usar la Actualización dinámica del sistema (DSU) para dispositivos que ya ejecutan Android 10 o versiones posteriores: consulta la página Actualizaciones dinámicas del sistema
Cómo enviar comentarios
Las GSIs están pensadas para ayudarte a validar tus apps en Android. Los comentarios sobre imágenes, herramientas y el proceso de uso de las GSIs en tus dispositivos son bienvenidos.
Para notificar errores o solicitudes de funciones, usa el componente exclusivo de la Herramienta de seguimiento de errores para GSIs.