Ab dem 27. März 2025 empfehlen wir, android-latest-release anstelle von aosp-main zu verwenden, um AOSP zu erstellen und Beiträge dazu zu leisten. Weitere Informationen finden Sie unter Änderungen am AOSP.
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Das Car UI Toolkit bietet ein Framework für die Benutzeroberflächenentwicklung, mit dem Sie dafür sorgen können, dass in Autos installierte Apps (Google-Apps sowie System- und Anbieter-Apps) Folgendes erreichen:
Selbstkonsistenz der Infotainment-UI/UX Selbstkonsistenz ist die Fähigkeit eines Nutzers, basierend auf früheren Erfahrungen mit demselben System vorherzusagen, wie er mit einem Infotainmentsystem interagieren kann.
Anpassung. OEMs können das Erscheinungsbild des Systems ändern, um die Funktionen bestmöglich in das Fahrzeuginnere und die Hardware einzubinden.
Weitere Informationen zur Integration der Car UI Library finden Sie auf den folgenden Seiten:
Die Auto-UI-Bibliothek ist eine statisch verknüpfte Bibliothek, die eine Reihe von Komponenten und Ressourcen bietet, mit denen Sie Folgendes implementieren können:
System- und OEM-Apps (Gerrit)
Android Automotive (AAOS)-Apps
Diese Bibliothek dient als:
Customization API von:
Definieren, welche Ressourcen angepasst werden können, z. B. Farben, Abmessungen und Zeichnelemente.
Die Ressourcen als API mit abwärtskompatiblen Garantien behandeln.
Kompatibilitätsschicht zwischen der kurzfristigen Lösung in Android 9 und Android 10 und der derzeit in Entwicklung befindlichen Lösung für die langfristige Nutzung.
Ressourcen-Overlays
Android bietet derzeit mehrere Möglichkeiten, Anpassungen vorzunehmen, ohne dass Änderungen an den betroffenen Subsystemen und Apps erforderlich sind:
Buildzeit-Overlays Diese Anpassung wird beim Erstellen des Android-System-Images angewendet. Während des Builds erhalten alle Apps im System Ressourcen aus ihrem res-Ordner und aus overlay-Ordnern, die in den Ziel-Makefiles definiert sind.
Dynamische Laufzeit-Overlays (dynamic RRO) Diese speziellen APKs enthalten nur Ressourcen und eine Manifestdatei, die angibt, auf welches Ziel-APK sie sich auswirken. Dynamische RROs werden unabhängig vom System-Image kompiliert und bereitgestellt und können aktiviert und deaktiviert werden. Wenn das System eine Ressourcensuche für eine bestimmte App durchführt, wird auch geprüft, ob ein RRO darauf ausgerichtet ist und ob das RRO eine Ressource mit demselben Namen enthält.
Statische Laufzeit-Overlays (static RRO). Ähnlich wie dynamische RROs sind sie immer aktiviert. Das bedeutet, dass sie nicht deinstalliert oder aktualisiert werden können, ohne ein vollständiges System-Image-Upgrade durchzuführen. Statische RROs dienen als Zwischenschicht zwischen Buildzeit- und dynamischen Laufzeit-Overlays.
Neben UI-Komponenten bietet die Car UI-Bibliothek einen Mechanismus, mit dem Ressourcen, die statisch in jede App eingebunden sind, mithilfe von statischen RROs direkt überlagert werden können. OEMs müssen einen Ordner mit ihren Ressourcen-Overlays und einer Liste der entsprechenden Apps bereitstellen. Während eines Builds verwendet die Car UI-Bibliothek diese Informationen, um für jede anvisierte App eine statische RRO zu generieren.
Abbildung 1 Komponenten der Auto-UI-Bibliothek
Im Bild oben:
Grün. Vom OEM bereitgestellte Anpassungen, eine Mischung aus Overlay-Ressourcen zur Build- und zur Laufzeit.
Gelb Unterstützung durch die Car UI-Bibliothek, einschließlich überlagerbarer
Ressourcen, Komponenten (Java-Code) und Build-Unterstützung zum Generieren der erforderlichen RROs.
BlauAnpassbare Ziele, einschließlich Framework, System-Apps, Anbieter-Apps und GAS-Apps, die die Auto-UI-Bibliothek zum Anpassen von UI-Elementen verwenden.
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2025-07-27 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-07-27 (UTC)."],[],[],null,["# Car UI library integration guide\n\nThe Car User Interface (UI) toolkit provides a UI development framework you can use to\nensure apps present in cars (Google apps *and* system and vendor apps) can attain:\n\n- **Infotainment UI/UX self-consistency.** Self-consistency is the ability for a\n user to predict how to interact with an infotainment system based on previous experiences\n interacting with the same system.\n\n- **Customization.**OEMs can modify the look-and-feel of the system to best\n integrate functionality with vehicle interior and hardware.\n\nTo learn more about Car UI Library integration, see these pages:\n\n- [Integrate the Car UI library into apps](/docs/automotive/hmi/car_ui/integrate)\n- [Customize apps](/docs/automotive/hmi/car_ui/customize)\n- [Add custom fonts](/docs/automotive/hmi/car_ui/fonts)\n- [Customize Car UI preferences](/docs/automotive/hmi/car_ui/caruipreference)\n- [CarUiListItem](/docs/automotive/hmi/car_ui/caruilistitem)\n- [Customize CarUiRecyclerView](/docs/automotive/hmi/car_ui/caruirecyclerview)\n- [Troubleshoot runtime resource overlays](/docs/core/runtime/rro-troubleshoot)\n- [Release notes](/docs/automotive/hmi/car_ui/release_notes)\n- [Appendix A, work with RROs](/docs/automotive/hmi/car_ui/appendix)\n- [Appendix B, customization guidelines](/docs/automotive/hmi/car_ui/appendix_b)\n\nAbout the Car UI library\n------------------------\n\nThe Car UI library is a statically linked library, which provides a set of components and\nresources you can use to implement:\n\n- System and OEM apps (Gerrit)\n- Android Automotive (AAOS) apps\n\nThis library serves as a:\n\n- Customization API by:\n\n - Defining which resources can be customized including, colors, dimensions, and drawables.\n - Treating the resources as an API with backwards-compatible guarantees.\n- Compatibility layer between the short-term provided in Android 9 and Android 10 and the longer term solution currently being developed.\n\nResource overlays\n-----------------\n\nAndroid currently provides several ways to apply customizations without additional work needed to\nthe affected subsystems and apps:\n\n- **Build-time overlays.** This customization is applied at Android system image\n build time. During the build, all apps in the system receive resources from their\n `res` folder and from `overlay` folders defined in the target\n makefiles.\n\n- **Dynamic runtime overlays (dynamic RRO).** These special APKs contain\n *only* resources and a manifest file to indicate which *target APK* they will\n affect. Dynamic RROs are compiled and deployed independently of the system image and can be\n toggled on and off. When the system performs a resource lookup for a specific app, the\n system also checks for *any* RRO targeting it and if the RRO contains a resource with the\n same name.\n\n- **Static runtime overlays (static RRO).** Similar to dynamic RROs in structure,\n these are always *on*, meaning they can't be uninstalled or updated without performing a\n full system image upgrade. Static RROs serve as an intermediate of build-time and dynamic\n runtime overlays.\n\nIn addition to UI components, the Car UI library provides a mechanism to directly overlay\nresources (statically linked into each app) with the OEM resources, using a *set of static\nRROs*. OEMs must provide a folder containing their resource overlays and a list of targeted\napps. During a build, the Car UI library infrastructure would use this information to\ngenerate one static RRO for each targeted app.\n| **Note:** This mechanism will become obsolete in Android 11 (and higher) when RROs can target Android libraries.\n\n**Figure 1**. Car UI library components\n\nIn the image above:\n\n- **Green**. Customization provided by the OEM, a mix of build-time and run-time\n overlay resources.\n\n- **Yellow.** Support provided by Car UI library, including *overlayable*resources, components (Java code) and build support to generate the necessary RROs.\n\n- **Blue.** *Customizable* targets including the framework, system\n apps, vendor apps and GAS apps that use the Car UI library to\n *customize* UI elements."]]