हमारा सुझाव है कि 27 मार्च, 2025 से AOSP को बनाने और उसमें योगदान देने के लिए, aosp-main के बजाय android-latest-release का इस्तेमाल करें. ज़्यादा जानकारी के लिए, AOSP में हुए बदलाव लेख पढ़ें.
कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी को इंटिग्रेट करने से जुड़ी गाइड
संग्रह की मदद से व्यवस्थित रहें
अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.
कार के यूज़र इंटरफ़ेस (यूआई) टूलकिट में, यूआई डेवलपमेंट फ़्रेमवर्क दिया गया है. इसका इस्तेमाल करके, यह पक्का किया जा सकता है कि कार में मौजूद ऐप्लिकेशन (Google के ऐप्लिकेशन और सिस्टम और वेंडर के ऐप्लिकेशन) ये काम कर सकें:
इंफ़ोटेनमेंट यूज़र इंटरफ़ेस (यूआई)/यूज़र अनुभव (यूएक्स) में एक जैसी सुविधाएं. एक जैसा अनुभव, उपयोगकर्ता के लिए एक ऐसी सुविधा है जिससे वह किसी इन्फ़ॉर्टेनमेंट सिस्टम के साथ इंटरैक्ट करने के तरीके का अनुमान लगा सकता है. यह अनुमान, उसी सिस्टम के साथ इंटरैक्ट करने के पिछले अनुभवों के आधार पर लगाया जाता है.
पसंद के मुताबिक बनाना. OEM, वाहन के इंटीरियर और हार्डवेयर के साथ फ़ंक्शन को बेहतर तरीके से इंटिग्रेट करने के लिए, सिस्टम के लुक-एंड-फ़ील में बदलाव कर सकते हैं.
कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी के इंटिग्रेशन के बारे में ज़्यादा जानने के लिए, ये पेज देखें:
कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी के बारे में जानकारी
कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी, स्टैटिक तौर पर लिंक की गई लाइब्रेरी है. इसमें कॉम्पोनेंट और संसाधनों का एक सेट होता है. इनका इस्तेमाल करके, ये काम किए जा सकते हैं:
सिस्टम और OEM ऐप्लिकेशन (Gerrit)
Android Automotive (AAOS) ऐप्लिकेशन
यह लाइब्रेरी इन कामों के लिए इस्तेमाल की जाती है:
कस्टमाइज़ेशन एपीआई, इनके हिसाब से:
यह तय करना कि किन संसाधनों को पसंद के मुताबिक बनाया जा सकता है. इनमें रंग, डाइमेंशन, और ड्रॉआउट शामिल हैं.
संसाधनों को एपीआई के तौर पर इस्तेमाल करना, ताकि वे पुराने सिस्टम के साथ काम कर सकें.
Android 9 और Android 10 में उपलब्ध कराए गए कुछ समय के लिए काम करने वाले समाधान और लंबे समय तक काम करने वाले समाधान के बीच काम करने वाली लेयर. फ़िलहाल, लंबे समय तक काम करने वाला समाधान तैयार किया जा रहा है.
रिसॉर्स ओवरले
Android फ़िलहाल, अपनी पसंद के मुताबिक बदलाव करने के कई तरीके उपलब्ध कराता है. इसके लिए, आपको उन सबसिस्टम और ऐप्लिकेशन में कोई बदलाव करने की ज़रूरत नहीं होती जिन पर असर पड़ा है:
बिल्ड टाइम ओवरले. पसंद के मुताबिक बनाने की यह सुविधा, Android सिस्टम इमेज को बनाने के समय लागू की जाती है. बिल्ड के दौरान, सिस्टम में मौजूद सभी ऐप्लिकेशन को उनके res फ़ोल्डर और टारगेट मेकफ़ाइल में तय किए गए overlay फ़ोल्डर से रिसॉर्स मिलते हैं.
डाइनैमिक रनटाइम ओवरले (डाइनैमिक आरआरओ). इन खास APK में, सिर्फ़ संसाधन और एक मेनिफ़ेस्ट फ़ाइल होती है. इससे यह पता चलता है कि इनका असर किस टारगेट APK पर पड़ेगा. डाइनैमिक आरआरओ को सिस्टम इमेज से अलग से कॉम्पाइल और डिप्लॉय किया जाता है. साथ ही, इन्हें चालू और बंद किया जा सकता है. जब सिस्टम किसी खास ऐप्लिकेशन के लिए रिसॉर्स लुकअप करता है, तो वह उस ऐप्लिकेशन को टारगेट करने वाले किसी भी आरआरओ की जांच भी करता है. साथ ही, यह भी देखता है कि आरआरओ में उसी नाम का कोई रिसॉर्स है या नहीं.
स्टैटिक रनटाइम ओवरले (स्टैटिक आरआरओ). डाइनैमिक आरआरओ की तरह ही, ये हमेशा चालू रहते हैं. इसका मतलब है कि सिस्टम इमेज को पूरी तरह से अपग्रेड किए बिना, इन्हें अनइंस्टॉल या अपडेट नहीं किया जा सकता. स्टैटिक आरआरओ, बिल्ड टाइम और डाइनैमिक
रनटाइम ओवरले के बीच इंटरमीडियरी के तौर पर काम करते हैं.
यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट के अलावा, कार यूज़र इंटरफ़ेस लाइब्रेरी, स्टैटिक आरआरओ के सेट का इस्तेमाल करके, सीधे तौर पर संसाधनों (हर ऐप्लिकेशन में स्टैटिक तौर पर लिंक किए गए) को OEM संसाधनों के साथ ओवरले करने का तरीका उपलब्ध कराती है. OEM को एक फ़ोल्डर उपलब्ध कराना होगा, जिसमें उनके रिसॉर्स ओवरले और टारगेट किए गए ऐप्लिकेशन की सूची शामिल हो. बिल्ड के दौरान, कार यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी का इन्फ़्रास्ट्रक्चर, इस जानकारी का इस्तेमाल करके, टारगेट किए गए हर ऐप्लिकेशन के लिए एक स्टैटिक आरआरओ जनरेट करेगा.
पहली इमेज. कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी के कॉम्पोनेंट
ऊपर दी गई इमेज में:
हरा. OEM की ओर से उपलब्ध कराए गए कस्टमाइज़ेशन, जो बिल्ड टाइम और रन टाइम के ओवरले संसाधनों का एक मिक्स है.
पीला. कार यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी से मिलने वाली सहायता. इसमें ओवरले किए जा सकने वाले
संसाधन, कॉम्पोनेंट (Java कोड), और ज़रूरी आरआरओ जनरेट करने के लिए सहायता शामिल है.
नीला.पसंद के मुताबिक बनाए जा सकने वाले टारगेट. इनमें फ़्रेमवर्क, सिस्टम ऐप्लिकेशन, वेंडर ऐप्लिकेशन, और GAS ऐप्लिकेशन शामिल हैं. ये ऐप्लिकेशन, यूज़र इंटरफ़ेस (यूआई) एलिमेंट को पसंद के मुताबिक बनाने के लिए, कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी का इस्तेमाल करते हैं.
इस पेज पर मौजूद कॉन्टेंट और कोड सैंपल कॉन्टेंट के लाइसेंस में बताए गए लाइसेंस के हिसाब से हैं. Java और OpenJDK, Oracle और/या इससे जुड़ी हुई कंपनियों के ट्रेडमार्क या रजिस्टर किए हुए ट्रेडमार्क हैं.
आखिरी बार 2025-07-27 (UTC) को अपडेट किया गया.
[[["समझने में आसान है","easyToUnderstand","thumb-up"],["मेरी समस्या हल हो गई","solvedMyProblem","thumb-up"],["अन्य","otherUp","thumb-up"]],[["वह जानकारी मौजूद नहीं है जो मुझे चाहिए","missingTheInformationINeed","thumb-down"],["बहुत मुश्किल है / बहुत सारे चरण हैं","tooComplicatedTooManySteps","thumb-down"],["पुराना","outOfDate","thumb-down"],["अनुवाद से जुड़ी समस्या","translationIssue","thumb-down"],["सैंपल / कोड से जुड़ी समस्या","samplesCodeIssue","thumb-down"],["अन्य","otherDown","thumb-down"]],["आखिरी बार 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."]]