Mulai 27 Maret 2025, sebaiknya gunakan android-latest-release, bukan aosp-main, untuk mem-build dan berkontribusi pada AOSP. Untuk mengetahui informasi selengkapnya, lihat Perubahan pada AOSP.
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Toolkit Antarmuka Pengguna (UI) Mobil menyediakan framework pengembangan UI yang dapat Anda gunakan untuk
memastikan aplikasi yang ada di mobil (aplikasi Google dan aplikasi sistem dan vendor) dapat mencapai:
Konsistensi mandiri UI/UX Infotainment. Konsistensi mandiri adalah kemampuan
pengguna untuk memprediksi cara berinteraksi dengan sistem infotainmen berdasarkan pengalaman sebelumnya
berinteraksi dengan sistem yang sama.
Penyesuaian. OEM dapat mengubah tampilan dan nuansa sistem untuk mengintegrasikan fungsi dengan interior dan hardware kendaraan dengan sebaik mungkin.
Untuk mempelajari integrasi Library UI Mobil lebih lanjut, lihat halaman berikut:
Library UI Mobil adalah library yang ditautkan secara statis, yang menyediakan kumpulan komponen dan
resource yang dapat Anda gunakan untuk menerapkan:
Aplikasi sistem dan OEM (Gerrit)
Aplikasi Android Automotive (AAOS)
Library ini berfungsi sebagai:
Customization API oleh:
Menentukan resource yang dapat disesuaikan, termasuk warna, dimensi, dan drawable.
Memperlakukan resource sebagai API dengan jaminan kompatibilitas mundur.
Lapisan kompatibilitas antara jangka pendek yang disediakan di Android 9 dan Android 10 serta
solusi jangka panjang yang sedang dikembangkan.
Overlay resource
Android saat ini menyediakan beberapa cara untuk menerapkan penyesuaian tanpa memerlukan tindakan tambahan pada
subsistem dan aplikasi yang terpengaruh:
Overlay waktu build. Penyesuaian ini diterapkan pada waktu build
image sistem Android. Selama build, semua aplikasi dalam sistem menerima resource dari
folder res dan dari folder overlay yang ditentukan dalam makefile
target.
Overlay runtime dinamis (RRO dinamis). APK khusus ini berisi
hanya resource dan file manifes untuk menunjukkan APK target yang akan
terpengaruh. RRO dinamis dikompilasi dan di-deploy secara independen dari image sistem dan dapat
diaktifkan dan dinonaktifkan. Saat sistem melakukan pencarian resource untuk aplikasi tertentu, sistem juga akan memeriksa semua RRO yang menargetkannya dan apakah RRO berisi resource dengan
nama yang sama.
Overlay runtime statis (RRO statis). Serupa dengan struktur RRO dinamis,
RRO ini selalu aktif, yang berarti tidak dapat di-uninstal atau diupdate tanpa melakukan
upgrade image sistem penuh. RRO statis berfungsi sebagai perantara overlay runtime dinamis dan waktu build.
Selain komponen UI, library UI Mobil menyediakan mekanisme untuk langsung menempatkan
resource (ditautkan secara statis ke setiap aplikasi) dengan resource OEM, menggunakan kumpulan
RRO statis. OEM harus menyediakan folder yang berisi overlay resource dan daftar aplikasi
yang ditargetkan. Selama build, infrastruktur library UI Mobil akan menggunakan informasi ini untuk
membuat satu RRO statis untuk setiap aplikasi yang ditargetkan.
Gambar 1. Komponen library UI Mobil
Pada gambar di atas:
Hijau. Penyesuaian yang disediakan oleh OEM, campuran resource overlay waktu build dan waktu
run.
Kuning. Dukungan yang disediakan oleh library UI Mobil, termasuk resource yang dapat di-overlay
, komponen (kode Java), dan dukungan build untuk membuat RRO yang diperlukan.
Biru. Target yang dapat disesuaikan termasuk framework, aplikasi
sistem, aplikasi vendor, dan aplikasi GAS yang menggunakan library UI Mobil untuk
menyesuaikan elemen UI.
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-07-27 UTC.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 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."]]