El kit de herramientas de la interfaz de usuario (IU) para vehículos proporciona un marco de trabajo de desarrollo de IU que puedes usar para asegurarte de que las apps presentes en los vehículos (las apps de Google y las apps del sistema y del proveedor) puedan lograr lo siguiente:
-
Autoconsistencia de la IU/UX del infoentretenimiento La coherencia interna es la capacidad de un usuario para predecir cómo interactuar con un sistema de infoentretenimiento en función de experiencias anteriores con el mismo sistema.
-
Personalización. Los OEMs pueden modificar el aspecto del sistema para integrar mejor la funcionalidad con el interior y el hardware del vehículo.
Para obtener más información sobre la integración de la biblioteca de IU del vehículo, consulta estas páginas:
- Cómo integrar la biblioteca de la IU del vehículo en las apps
- Cómo personalizar apps
- Cómo agregar fuentes personalizadas
- Cómo personalizar las preferencias de la IU de Car
- CarUiListItem
- Cómo personalizar CarUiRecyclerView
- Soluciona problemas de superposiciones de recursos de entorno de ejecución
- Notas de la versión
- Apéndice A, trabajo con RRO
- Apéndice B, lineamientos de personalización
Información acerca de la biblioteca de la IU del vehículo
La biblioteca de la IU del vehículo es una biblioteca vinculada de forma estática, que proporciona un conjunto de componentes y recursos que puedes usar para implementar lo siguiente:
- Apps del sistema y del OEM (Gerrit)
- Apps para Android Automotive (AAOS)
Esta biblioteca funciona como:
-
API de personalización por:
- Definir qué recursos se pueden personalizar, incluidos los colores, las dimensiones y los elementos de diseño
- Tratar los recursos como una API con garantías de retrocompatibilidad
- Capa de compatibilidad entre la solución a corto plazo que se proporciona en Android 9 y Android 10 y la solución a largo plazo que se está desarrollando actualmente.
Superposiciones de recursos
Actualmente, Android proporciona varias formas de aplicar personalizaciones sin necesidad de realizar trabajo adicional en los subsistemas y las apps afectados:
-
Superposiciones del tiempo de compilación Esta personalización se aplica en el tiempo de compilación de la imagen del sistema de Android. Durante la compilación, todas las apps del sistema reciben recursos de su carpeta
res
y de las carpetasoverlay
definidas en los archivos de configuración de destino. -
Superposiciones del entorno de ejecución dinámico (RRO dinámico). Estos APKs especiales contienen solo recursos y un archivo de manifiesto para indicar a qué APK de destino afectarán. Los RRO dinámicos se compilan y se implementan independientemente de la imagen del sistema y se pueden activar o desactivar. Cuando el sistema realiza una búsqueda de recursos para una app específica, también verifica si hay algún RRO segmentado para ella y si el RRO contiene un recurso con el mismo nombre.
-
Superposiciones de tiempo de ejecución estáticas (RRO estáticas) Al igual que los RRO dinámicos en la estructura, estos siempre están activados, lo que significa que no se pueden desinstalar ni actualizar sin realizar una actualización completa de la imagen del sistema. Los RRO estáticos funcionan como un elemento intermedio de las superposiciones de tiempo de compilación y tiempo de ejecución dinámicas.
Además de los componentes de la IU, la biblioteca de la IU del automóvil proporciona un mecanismo para superponer directamente los recursos (vinculados de forma estática en cada app) con los recursos del OEM, a través de un conjunto de RRO estáticos. Los OEMs deben proporcionar una carpeta que contenga sus superposiciones de recursos y una lista de apps objetivo. Durante una compilación, la infraestructura de la biblioteca de la IU del vehículo usaría esta información para generar un RRO estático para cada app objetivo.

Figura 1. Componentes de la biblioteca de la IU del vehículo
En la imagen anterior, se muestra lo siguiente:
-
Verde. Personalización proporcionada por el OEM, una combinación de recursos de superposición de tiempo de compilación y tiempo de ejecución
-
Amarillo Compatibilidad proporcionada por la biblioteca de la IU del automóvil, incluidos recursos superpuestos , componentes (código Java) y compatibilidad de compilación para generar los RRO necesarios.
-
Azul. Objetivos personalizables, incluidos el framework, las apps del sistema, las apps de proveedores y las apps de GAS que usan la biblioteca de la IU del vehículo para personalizar los elementos de la IU.