Guide d'intégration de la bibliothèque Car UI

La boîte à outils d'interface utilisateur pour voitures fournit un framework de développement d'interface utilisateur que vous pouvez utiliser pour vous assurer que les applications présentes dans les voitures (applications Google et applications système et du fournisseur) peuvent atteindre les objectifs suivants:

  • Cohérence de l'interface utilisateur/expérience utilisateur du système d'infodivertissement. L'auto-cohérence est la capacité d'un utilisateur à prédire comment interagir avec un système d'infodivertissement en fonction de ses expériences précédentes avec le même système.

  • Personnalisation. Les OEM peuvent modifier l'apparence du système afin d'intégrer au mieux les fonctionnalités à l'intérieur et au matériel du véhicule.

Pour en savoir plus sur l'intégration de la bibliothèque d'UI pour voitures, consultez les pages suivantes:

À propos de la bibliothèque Car UI

La bibliothèque d'UI pour voiture est une bibliothèque liée de manière statique, qui fournit un ensemble de composants et de ressources que vous pouvez utiliser pour implémenter les éléments suivants:

  • Applications système et OEM (Gerrit)
  • Applications Android Automotive (AAOS)

Cette bibliothèque sert de:

  • API de personnalisation par:

    • Définir les ressources pouvant être personnalisées, y compris les couleurs, les dimensions et les drawables
    • Traiter les ressources comme une API avec des garanties de rétrocompatibilité
  • Couche de compatibilité entre la solution à court terme fournie dans Android 9 et Android 10 et la solution à plus long terme actuellement en cours de développement.

Superpositions de ressources

Android propose actuellement plusieurs façons d'appliquer des personnalisations sans travail supplémentaire pour les sous-systèmes et les applications concernés:

  • Superpositions au moment de la compilation Cette personnalisation est appliquée au moment de la création de l'image système Android. Lors de la compilation, toutes les applications du système reçoivent des ressources à partir de leur dossier res et des dossiers overlay définis dans les fichiers de compilation cibles.

  • Superpositions d'exécution dynamiques (RRO dynamiques). Ces APK spéciaux ne contiennent que des ressources et un fichier manifeste pour indiquer l'APK cible qu'ils affecteront. Les RRO dynamiques sont compilés et déployés indépendamment de l'image système, et peuvent être activés ou désactivés. Lorsque le système effectue une recherche de ressources pour une application spécifique, il recherche également tous les RRO la ciblant et vérifie si le RRO contient une ressource portant le même nom.

  • Superpositions d'exécution statiques (RRO statiques) Semblables aux RRO dynamiques en termes de structure, ils sont toujours activés, ce qui signifie qu'ils ne peuvent pas être désinstallés ni mis à jour sans effectuer une mise à niveau complète de l'image système. Les RRO statiques servent d'intermédiaire entre les superpositions de compilation et d'exécution dynamiques.

En plus des composants d'interface utilisateur, la bibliothèque d'interface utilisateur pour voitures fournit un mécanisme permettant de superposer directement les ressources (liées de manière statique dans chaque application) aux ressources OEM à l'aide d'un ensemble de RRO statiques. Les OEM doivent fournir un dossier contenant leurs superpositions de ressources et une liste d'applications ciblées. Lors d'une compilation, l'infrastructure de la bibliothèque d'UI pour voitures utilise ces informations pour générer un RRO statique pour chaque application ciblée.

Composants de la bibliothèque Car UI

Figure 1 : Composants de la bibliothèque Car UI

Dans l'image ci-dessus:

  • Vert Personnalisation fournie par l'OEM, combinaison de ressources de superposition au moment de la compilation et de l'exécution.

  • Jaune Prise en charge fournie par la bibliothèque d'UI pour voitures, y compris des ressources superposables , des composants (code Java) et une prise en charge de la compilation pour générer les RRO nécessaires.

  • Bleu. Cibles personnalisables, y compris le framework, les applications système, les applications du fournisseur et les applications GAS qui utilisent la bibliothèque d'UI de voiture pour personnaliser les éléments d'interface utilisateur.