Android Automotive, कार में मौजूद सूचना और मनोरंजन की सुविधा देने वाला प्लैटफ़ॉर्म है. इसे Android के साथ उपलब्ध कराया जाता है ओपन सोर्स प्रोजेक्ट (AOSP). इस विषय से जुड़े लेखों में, अहम कॉन्सेप्ट और कॉम्पोनेंट के बारे में जानकारी दी गई है को Android Automotive System के यूज़र इंटरफ़ेस (यूआई) से मिला है. साथ ही, इसमें उन मुख्य ऐप्लिकेशन के बारे में बताया गया है जो Android Automotive System OEM, तीसरे पक्ष के डेवलपर, और असली उपयोगकर्ताओं के लिए मशीन इंटरफ़ेस (एचएमआई) वाला सिस्टम.
- AOSP होस्ट इंटिग्रेशन गाइड. ऐप्लिकेशन होस्ट, 3P कार ऐप्लिकेशन को अपने डिवाइस पर OEM-स्टाइल वाले यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट रेंडर करने की अनुमति देता है की ओर से.
- कार की सेटिंग का स्ट्रक्चर. कार की सेटिंग में, कार के हिसाब से विज़ुअल यूज़र इंटरफ़ेस मिलता है. इससे ड्राइवर का ध्यान भटकने से रोका जा सकता है ऑप्टिमाइज़ेशन, और OEM के लिए अतिरिक्त कस्टमाइज़ेशन एंट्री पॉइंट.
- कार यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी इंटिग्रेशन गाइड. कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी, यूआई डेवलपमेंट फ़्रेमवर्क उपलब्ध कराती है. इससे कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी में मौजूद सभी ऐप्लिकेशन चालू होते हैं ताकि कार को एक जैसा और बेहतरीन बनाया जा सके.
- स्टेटस बार के सिस्टम आइकॉन को पसंद के मुताबिक बनाएं. स्थिति बार, Android सिस्टम के यूज़र इंटरफ़ेस (यूआई) का एक कॉम्पोनेंट है. इसका इस्तेमाल, Android सिस्टम के यूज़र इंटरफ़ेस (यूआई) को लगातार दिखाने के लिए किया जाता है अहम जानकारी दी हो. स्थिति बार सिस्टम आइकॉन को पसंद के मुताबिक बनाने का तरीका जानें.
- चेतावनी. अलर्ट करने की सुविधा को पसंद के मुताबिक बनाने का तरीका जानें.
- डायलर. Android के लिए बने इस सिस्टम ऐप्लिकेशन का इस्तेमाल करके, ब्लूटूथ के लिए डिस्ट्रैक्शन को ऑप्टिमाइज़ करने (डीओ) वाले अनुभव को लागू करें कॉल करना, संपर्क ब्राउज़िंग, और कॉल प्रबंधन.
- मीडिया. सिर्फ़ कुछ सेटिंग की मदद से और एक सेवा के बाद भी, डेवलपर मौजूदा मीडिया ऐप्लिकेशन को बढ़ा सकते हैं. ऐप्लिकेशन को Automotive Media टेंप्लेट. इसके ज़रिए डेवलपर, टेंप्लेट के रंग, फ़ॉन्ट, आइकॉन वगैरह को अपनी पसंद के मुताबिक बना सकते हैं लोगों को ब्रैंड का बेहतरीन अनुभव दे सकें.
- सूचनाएं. सूचनाओं के दिखने का तरीका और उन्हें कॉन्फ़िगर करने का तरीका जानें.
शब्दावली
एचएमआई और इससे जुड़े लेखों में इन शब्दों का इस्तेमाल किया जाता है:
शब्द | परिभाषा |
---|---|
मुख्य ऐप्लिकेशन | सिस्टम के काम करने के लिए ज़रूरी ऐप्लिकेशन का सेट. इनमें सेटिंग, रेडियो, एचवीएसी, मीडिया, डायलर, और कीबोर्ड. |
कंपैटबिलिटी डेफ़िनिशन दस्तावेज़ (सीडीडी) | यह उन शर्तों की गिनती करता है जो डिवाइसों के साथ काम करने के लिए पूरी होनी चाहिए Android का एक वर्शन है. |
कंपैटबिलिटी टेस्ट सुइट (सीटीएस) | मुफ़्त, व्यावसायिक स्तर का टेस्टिंग सुइट, यहां से डाउनलोड किया जा सकता है कंपैटबिलिटी टेस्ट सुइट के डाउनलोड. |
पसंद के मुताबिक बनाएं | OEM की ज़रूरी शर्तों को पूरा करने के लिए, एओएसपी को लागू करने की प्रोसेस में बदलाव करना. आम तौर पर, इसमें कॉस्मेटिक बदलावों को लागू करने के लिए रिसॉर्स ओवरले का इस्तेमाल भी किया जाता है. यह पक्का करना कि सीडीडी, सीटीएस, और उपयोगकर्ता अनुभव से जुड़े सभी ज़रूरी दिशा-निर्देशों का पालन किया जा रहा हो. |
हीरो ऐप्लिकेशन | यह Android के सभी पहलुओं के लिए ज़रूरी ऐप्लिकेशन का सेट है. इसमें सुविधाओं के साथ-साथ, उनके काम करने का तरीका, अपग्रेड करने की योग्यता, तीसरे पक्ष के डेवलपर नेटवर्क, और असली उपयोगकर्ता. हीरो ऐप्लिकेशन में ये शामिल हैं सूचनाएं, सेटिंग, मीडिया, और कम्यूनिकेशन सेंटर/डायलर. संबंधित AOSP लागू किया जाना चाहिए, क्योंकि यह प्रोडक्शन क्वालिटी के मुताबिक होनी चाहिए. |
रिसॉर्स ओवरले | यूज़र इंटरफ़ेस की रेंडरिंग पर असर डालने के लिए, इस तरीके का इस्तेमाल करके कलर बदलें, यहां से डाइमेंशन बदलें, ड्रॉइंग चालू करें, और लेआउट रिसॉर्स लागू करें कंपाइल टाइम (सबसे सामान्य) या रनटाइम के दौरान (रनटाइम रिसोर्स ओवरले (RRO)). |
सिस्टम यूज़र इंटरफ़ेस (यूआई) | सिस्टम से जुड़े किसी ऐप्लिकेशन के बाहर का यूज़र इंटरफ़ेस, जैसे कि नेविगेशन बार, स्टेटस बार, लॉक स्क्रीन, और आवाज़ कम या ज़्यादा करने का डायलॉग बॉक्स. |
थीम | रंगों और स्टाइल का कलेक्शन, जिसका इस्तेमाल कॉम्पोनेंट के रंग-रूप को तय करने के लिए किया जाता है और वे ऐप्लिकेशन जिनमें थीम इनहेरिट होती है. |
उपयोगकर्ता अनुभव (यूएक्स) | यूज़र इंटरफ़ेस (यूआई) डिज़ाइन और इसकी उपयोगिता का फ़ील्ड. |
पसंद के मुताबिक बनाएं
सिस्टम यूज़र इंटरफ़ेस (यूआई) और अन्य मुख्य सिस्टम ऐप्लिकेशन को लागू करने की एओएसपी को एचएमआई डेवलपमेंट प्रोसेस शुरू करने की बुनियाद. एओएसपी में बदलाव करने की प्रक्रिया OEM की ब्रैंडिंग, कारोबार, और कानूनी ज़रूरतों को कस्टमाइज़ेशन कहा जाता है.
जबकि पूरे सिस्टम को इस तरह डिज़ाइन किया गया है कि वह ज़रूरत के हिसाब से काम करे, लेकिन फिर भी अलग-अलग कॉम्पोनेंट से जिसे अलग-अलग डिग्री में कस्टमाइज़ किया जा सकता है:
-
सिस्टम यूआई. OEM, एओएसपी को CDD और CTS और किसी भी अन्य लागू UX दिशा-निर्देशों के दायरे में आते हैं.
-
नॉन-हीरो सिस्टम ऐप्लिकेशन (इन्हें रेफ़रंस भी कहा जाता है). OEM पसंद के मुताबिक बना सकते हैं या एओएसपी को लागू किया जा सकता है.
-
हीरो ऐप्लिकेशन. हर ऐप्लिकेशन में, पसंद के मुताबिक बनाने के लिए दिशा-निर्देशों का एक सेट उपलब्ध होता है. ओईएम को एओएसपी लागू करने के बाद ही, इसे अपनी ज़रूरत के मुताबिक बनाने के लिए उन दिशा-निर्देशों के दायरे में आते हैं.
डेंसिटी कॉन्फ़िगरेशन
यह पक्का करने के लिए कि फ़िज़िकल डिसप्ले कॉन्फ़िगरेशन के हिसाब से यूज़र इंटरफ़ेस (यूआई) एलिमेंट सही तरीके से रेंडर हो रहे हैं, सघनता प्रॉपर्टी बकेट पर सेट होनी चाहिए (डिसप्ले मेट्रिक) जो फ़िज़िकल सघनता से सबसे करीब से मेल खाती हो, जैसे कि बिल्ड फ़ाइल में यह एंट्री:
PRODUCT_PROPERTY_OVERRIDES := \ ro.sf.lcd_density=160
UX से जुड़ी पाबंदियों वाला इंजन
CarUxRestrictionsManager
इससे ऐप्लिकेशन को बदलाव समझने में मदद मिलती है
उपयोगकर्ता अनुभव में सही तरीके से बदलाव करने के लिए, ड्राइविंग स्थिति से जुड़ी हुई हो. OEM
packages/services/Car/service/res/xml/car_ux_restrictions_map.xml
पर कॉन्फ़िगरेशन फ़ाइल
सिस्टम के काम करने के तरीके पर असर डालने के लिए डिज़ाइन किया जाता है.
सिस्टम की थीम
वह थीम जो पूरे सिस्टम में रंग और टेक्स्ट स्टाइल जैसे आइटम का डिफ़ॉल्ट सेट तय करती है
DeviceDefault. OEM को बदलाव लागू करके, पसंद के मुताबिक बनाने की प्रोसेस शुरू करने के लिए बढ़ावा दिया जाता है
DeviceDefault थीम. डिफ़ॉल्ट रूप से, सिस्टम यूज़र इंटरफ़ेस (यूआई) और एओएसपी में मौजूद सभी सिस्टम ऐप्लिकेशन, डिफ़ॉल्ट रूप से
इस थीम. OEM के डेवलप किए गए सिस्टम ऐप्लिकेशन को DeviceDefault को इनहेरिट करने का सुझाव दिया जाता है. तीसरा पक्ष
डेवलप किए गए ऐप्लिकेशन को DeviceDefault इनहेरिट करने के बजाय, Theme.Car का इस्तेमाल करना चाहिए
androidx.car
लाइब्रेरी में उपलब्ध कराया गया है. फ़ाइलें इस तरह मौजूद होती हैं:
- कोर.
/frameworks/base/core/res/res/values/themes_device_defaults.xml
- रंग.
/frameworks/base/core/res/res/values/colors_car.xml
- स्टाइल.
/frameworks/base/core/res/res/values/styles_car.xml
- कार ओवरले.
/packages/services/Car/car_product/overlay/.../values/themes_device_defaults.xml
OEM में car_product
डायरेक्ट्री का पैरलल ओवरले स्ट्रक्चर होना चाहिए
अपने वेंडर डायरेक्ट्री में जोड़ सकते हैं, जो car_product
ओवरले को और बढ़ा देता है.
प्लेग्राउंड थीम वाला ऐप्लिकेशन
यह ऐप्लिकेशन, DeviceDefault
थीम को पसंद के मुताबिक बनाने की प्रोसेस को आसान बनाता है.
एक ही जगह पर सभी थीम एट्रिब्यूट को विज़ुअलाइज़ करना. साथ ही, यह तुलना करके कि इसमें कुछ स्टाइल
की तरह ही अन्य सिस्टम ऐप्लिकेशन की तरह हैं, तो डेवलपर थीम से जुड़ी समस्याओं को तेज़ी से डीबग कर सकते हैं. इस ऐप्लिकेशन में
यहां उपलब्ध है:
/packages/services/Car/tests/ThemePlayground
सिस्टम यूज़र इंटरफ़ेस (यूआई)
सिस्टम के यूज़र इंटरफ़ेस (यूआई) में /frameworks/base
के अंदर के सभी यूज़र इंटरफ़ेस (यूआई) शामिल हैं. यह यूज़र इंटरफ़ेस (यूआई) खास तौर पर
/frameworks/base/packages/CarSystemUI
. इसमें नेविगेशन बार, स्टेटस बार,
लॉक स्क्रीन, वॉल्यूम वाले डायलॉग, टोस्ट, यूज़र पिकर, और अनुमति वाले डायलॉग. OEM
रिसॉर्स ओवरले और थीमिंग के ज़रिए, सिस्टम यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट बड़े पैमाने पर शामिल किए जाते हैं. हालांकि, इसके लिए ज़रूरी है कि हर कॉम्पोनेंट कॉम्पोनेंट
सीडीडी, सीटीएस, और लागू होने वाले उपयोगकर्ता अनुभव से जुड़े अन्य दिशा-निर्देशों की ज़रूरी शर्तें.
सिस्टम ऐप्लिकेशन
Android Automotive में, पूरे सिस्टम के लिए ज़रूरी मुख्य सिस्टम ऐप्लिकेशन का एक सेट शामिल है काम करता है. इनमें से Communication Center, मीडिया, सूचनाएं, और सेटिंग को हीरो ऐप्लिकेशन माना जाता है.
- संचार केंद्र
- एचवीएसी
- IME (कीबोर्ड)
- लॉन्चर (होम स्क्रीन)
- लोकल मीडिया प्लेयर
- मीडिया
- Messenger
- सूचनाएं
- रेडियो
- सेटिंग
होम स्क्रीन
होम स्क्रीन को कार लॉन्चर के नाम से भी जाना जाता है. यह एचएमआई अनुभव का लैंडिंग पेज है. एओएसपी को सिर्फ़ रेफ़रंस के तौर पर इस्तेमाल किया जाता है और OEM को जिसमें अक्सर नेविगेशन, मीडिया प्लेबैक, कम्यूनिकेशन, और ज़रूरत के मुताबिक, सिस्टम की अन्य स्थितियों के बारे में बताया गया है. अक्सर, कार लॉन्चर ऐप्लिकेशन, उपलब्ध ऐप्लिकेशन दिखाता है ट्रैक करने में मदद मिलती है. हाल ही के इवेंट, पैकेज में किए गए बदलाव, और बिना ग्राफ़िक यूज़र इंटरफ़ेस वाला इवेंट मैनेज करने का तरीका जानने के लिए (लॉन्चर गतिविधि नहीं) ऐप्लिकेशन, रेफ़रंस लागू करने की प्रक्रिया देखें.
सूचनाएं
सूचनाएं, Android OS का ज़रूरी हिस्सा हैं और उनके जैसा ही बनाया गया है (इनमें ये शामिल हैं मुख्य सूचना देने की सुविधा, सूचना सूची/केंद्र, सूचना एपीआई, रैंकिंग, और इनलाइन कार्रवाइयां) इन्हें Android Automotive में शामिल किया गया है. ज़्यादा जानकारी के लिए, हैंडहेल्ड देखें सूचनाएं खास जानकारी. वाहन संबंधित इस्तेमाल के उदाहरणों को ऑप्टिमाइज़ करने के लिए, नीचे दिए गए बदलाव किए गए हैं हैंडहेल्ड नोटिफ़िकेशन स्टैक):
-
लोगों को दिखने वाली सूचना से जुड़े कॉन्टेंट में कमी. को हटाया जा रहा है मीडिया पर वीडियो चलाना, लगातार नेविगेट करना, और "ग़ैर-ज़रूरी" (कम और इससे कम की अहमियत) सूचना की सूची/बीच में मौजूद सिस्टम ऐप्लिकेशन की फ़ोरग्राउंड सेवा से जुड़ी सूचनाएं यह समझना कि ये सूचनाएं गैर-ज़रूरी हैं (उदाहरण के लिए, मीडिया की स्थिति दिखाने वाला क्लस्टर) या उपयोगी नहीं हैं.
-
संदर्भ के हिसाब से मुश्किल कंट्रोल को हटाना. जैसे, स्क्रीन को देर तक दबाकर रखना और स्वाइप करना नियंत्रण).
-
UX से जुड़ी पाबंदियों के हिसाब से बनाए गए इंजन के कॉन्फ़िगरेशन के मुताबिक.
- ड्राइव की स्थिति के आधार पर, हो सकता है कि मैसेज सेवा की सूचना के कॉन्टेंट की झलक न दिखे.
- सभी स्ट्रिंग ज़्यादा से ज़्यादा लंबाई में कैप की गई हैं.
-
खास तौर पर, इन कारों के लिए नई सूचनाओं की कैटगरी जोड़ी गई हैं Android 9, सिर्फ़ बंडल किए गए सिस्टम ऐप्लिकेशन के लिए उपलब्ध है. ये ऐप्लिकेशन
android.uid.system
. -
CATEGORY_CAR_EMERGENCY
. सूचना सूची में सबसे ऊपर रैंक किया जाता है. बायपास परेशान न करें (डीएनडी) कंट्रोल. CATEGORY_CAR_WARNING
. आपातकालीन स्थिति के नीचे और दूसरों से ऊपर की रैंक दी गई है (डीएनडी को छोड़कर).-
CATEGORY_CAR_INFORMATION
. अन्य सूचनाओं को इस आधार पर रैंक किया जाता है "अहमियत" और रीसेंसी.
सूचना स्टैक से लेकर यूज़र इंटरफ़ेस (यूआई) तक, सूचनाओं के स्टैक को शुरू से आखिर तक लागू किया जाता है हीरो ऐप्लिकेशन माना जाता है. सभी HUs में एपीआई इंटरऑपरेबिलिटी (दूसरे सिस्टम के साथ काम करना) बनाए रखने की गारंटी देना अपग्रेड करने की क्षमता बढ़ाने के लिए, OEM को एओएसपी लागू करने के लिए कहा जाता है. साथ ही, तो उसे पसंद के मुताबिक बनाएं.
पसंद के मुताबिक बनाएं
इसमें स्टैंडर्ड DeviceDefault थीमिंग और रिसॉर्स ओवरले लागू होते हैं. बहुत कम संख्या में, उपयोगकर्ता के व्यवहार को पसंद के मुताबिक बनाने वाले नॉब यहां उपलब्ध हैं:
packages/apps/Car/Notification/res/values/config.xml
सेटिंग
Settings ऐप्लिकेशन (कार की सेटिंग) उस हीरो ऐप्लिकेशन में से एक है जो नॉब दिखाता है, जिसे उपयोगकर्ता Android OS और कार के बाकी हिस्सों को कॉन्फ़िगर करने के लिए इस्तेमाल कर सकता है. सेटिंग ऐप्लिकेशन के ओएस में 200 से ज़्यादा सुविधाएं उपलब्ध हैं, जो कि हर प्रमुख ओएस के साथ एक-दूसरे से जुड़ी होती हैं Android रिलीज़. अपग्रेड करने की सुविधा चालू करने और फ़्रैगमेंटेशन से बचने के लिए, OEM को सलाह दी जाती है एओएसपी लागू करने के बाद, उसे ज़रूरत के हिसाब से कस्टमाइज़ किया जा सकता है.
पसंद के मुताबिक बनाएं
सेटिंग ऐप्लिकेशन, कस्टमाइज़ेशन को ध्यान में रखता है और इनके लिए कई तरीके उपलब्ध कराता है पसंद के मुताबिक बनाने की सुविधा मिलती है.
-
थीमिंग. हर प्राथमिकता ऑब्जेक्ट प्रकार को दिखाने के तरीके को विज़ुअल के मुताबिक बनाने की सुविधा चालू करता है रेंडर करना है. इसमें ये शामिल हैं:
-
Preference.DeviceDefault.CheckBoxPreference
-
Preference.DeviceDefault.DialogPreference.EditTextPreference
-
-
क्रम के हिसाब से पसंद के मुताबिक बनाना. चालू करने के लिए:
-
आर्बिट्रेरी रूट फ़्रैगमेंट में लॉन्च करें, टाइटल वाली फ़ाइल में
config_settings_hierarchy_root_fragment
Settings/res/values/config.xml
-
ऑर्डर, ग्रुपिंग, टेक्स्ट, और आइकॉन जैसे आइटम को पसंद के मुताबिक बनाने की सुविधा
Settings/res/xml/*.xml
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
-
-
स्टैटिक इंजेक्शन. ओवरले प्रोजेक्ट सेट अप करते समय, OEM मालिकाना स्क्रीन के बारे में बताएं. इसके बाद, अतिरिक्त फ़्रैगमेंट और कंट्रोलर क्लास जोड़ें को व्यवस्थित कर सकते हैं.
-
डाइनैमिक इंजेक्शन. अगर कोई अलग ऐप्लिकेशन (
apk
) वह सेटिंग स्क्रीन जिसे मुख्य सेटिंग ऐप्लिकेशन से लिंक किया जाना चाहिए, अलग ऐप्लिकेशन डाइनैमिक रूप से इंजेक्ट किया गया. ज़्यादा जानकारी के लिए, यह देखें डाइनैमिक प्राथमिकताएं.
मीडिया
मीडिया एक हीरो ऐप्लिकेशन है, जो मीडिया के लिए फ़्रंट-एंड उपयोगकर्ता अनुभव उपलब्ध कराता है
वे ऐप्लिकेशन जो
MediaSession
और MediaBrowser
एपीआई. मीडिया ऐप्लिकेशन, तीसरे पक्ष के ऐप्लिकेशन (जैसे कि Spotify और Pandora) के साथ-साथ अन्य ऐप्लिकेशन भी हो सकते हैं
मीडिया सोर्स, जैसे कि ब्लूटूथ (बीटी) स्ट्रीमिंग और लोकल मीडिया.
Android Auto (Projection) में सैकड़ों मीडिया ऐप्लिकेशन उपलब्ध हैं. ये सभी ऐप्लिकेशन, Android Auto में उपलब्ध हैं इन मीडिया एपीआई को लागू करें, जैसा कि अपने-आप चलने की सुविधा के लिए, ऑडियो चलाने की सुविधा उपलब्ध कराना. मीडिया एपीआई, Android के हर मुख्य रिलीज़ और Androidx लाइब्रेरी में उपलब्ध है. सभी मीडिया ऐप्लिकेशन और Android के आने वाले वर्शन में एपीआई इंटरऑपरेबिलिटी की गारंटी देने के लिए, OEM हम एओएसपी को लागू करके उसे कस्टमाइज़ करने का सुझाव देते हैं.
पसंद के मुताबिक बनाएं
DeviceDefault थीम की मदद से, स्टैंडर्ड थीम इस्तेमाल करने की सुविधा, मीडिया पर भी लागू होती है. इसके अलावा, संसाधन ओवरले की मदद से रंग-रूप को कस्टमाइज़ करना संभव है, बशर्ते उपयोगकर्ताओं के अनुभव से जुड़े दिशा-निर्देशों के मुताबिक होना चाहिए.
यूएसबी मीडिया और मीडिया सोर्स
हमारा सुझाव है कि जहां तक हो सके, इन मीडिया सोर्स को YouTube Studio से कनेक्ट करके रखें
MediaSession
को लागू करके
और MediaBrowser
APIs (यह किसी तीसरे पक्ष के मीडिया ऐप्लिकेशन के लिए सही है). एओएसपी में LocalMediaPlayer ऐप्लिकेशन देखें.
यह ऐप्लिकेशन, लोकल मीडिया फ़ाइलें दिखाता है और मीडिया में सोर्स के तौर पर दिखता है.