OEM डिज़ाइन टोकन, Android Automotive OS (AAOS) में Material Design सिस्टम को लागू करने के लिए होते हैं. मोबाइल पर टोकन वैल्यू के लिए, एल्गोरिदम या उपयोगकर्ता के चुने गए तरीके के उलट, OEM डिज़ाइन टोकन वैल्यू तय करते हैं. डिज़ाइन टोकन, डिज़ाइन से जुड़े छोटे और बार-बार लिए जाने वाले फ़ैसलों को दिखाते हैं. इनसे डिज़ाइन सिस्टम का विज़ुअल स्टाइल तय होता है. साथ ही, ये स्टैटिक वैल्यू को ऐसे नामों से बदल देते हैं जिनसे उनकी जानकारी अपने-आप मिल जाती है. ये टोकन, Material Design सिस्टम के टोकन से मिलते-जुलते हैं.
OEM टोकन लाइब्रेरी
OEM डिज़ाइन टोकन का रेफ़रंस, OEM टोकन लाइब्रेरी के ज़रिए दिया जाता है. इसमें तीन कॉम्पोनेंट होते हैं, जिनकी जानकारी फ़ोटो 1 में दी गई है.
पहली इमेज. OEM टोकन लाइब्रेरी के कॉम्पोनेंट.
स्टैटिक लाइब्रेरी
OEM टोकन लाइब्रेरी का स्टैटिक लाइब्रेरी कॉम्पोनेंट, टोकन वैल्यू को ऐक्सेस करने की सुविधा देता है.
- टोकन के लिए OEM वैल्यू ऐक्सेस करने के लिए एपीआई उपलब्ध कराता है.
- यह विकल्प, थीम में टोकन रेफ़रंस को ओईएम वैल्यू से बदलने के लिए ऑप्ट-इन करने की सुविधा चालू करता है.
शेयर लाइब्रेरी
शेयर की गई लाइब्रेरी कॉम्पोनेंट, इन चीज़ों को तय करता है:
- लाइब्रेरी का नाम.
- OEM टोकन वैल्यू को चालू करने के लिए बूलियन ऑप्ट-इन.
- OEM टोकन की वैल्यू देने वाली स्टाइल.
OEM, शेयर की गई लाइब्रेरी के कॉम्पोनेंट के मालिकाना हक को बनाए रखने के लिए, शेयर की गई लाइब्रेरी को लागू करने के तरीके में बदलाव कर सकते हैं. इसमें, OEM के तय किए गए पैकेज का नाम भी शामिल है.
दूसरी इमेज. शेयर की गई लाइब्रेरी को लागू करने के तरीके को बदलना.
OEM की शेयर की गई लाइब्रेरी
शेयर की गई लाइब्रेरी के कॉम्पोनेंट को OEM की ओर से बदलने पर, लाइब्रेरी का मालिकाना हक OEM के पास होता है. साथ ही, OEM टोकन लाइब्रेरी के अन्य कॉम्पोनेंट के साथ काम करने की सुविधा भी बनी रहती है. ऐसा इसलिए होता है, क्योंकि OEMs, पैकेज का नाम और हस्ताक्षर सेट करने का तरीका उपलब्ध कराते हैं. हालांकि, शेयर की गई लाइब्रेरी को लागू करने के तरीके में कोई बदलाव नहीं किया जाता.
शेयर की गई लाइब्रेरी के लिए बदलावों को यहां दिखाए गए तरीके से तय किया जा सकता है:
override_android_app { name: "[OEM]-token-shared-lib", base: "token-shared-lib", package_name: "com.[OEM].sharedlib", rename_resources_package: false, certificate: … }
टोकन वैल्यू सेट करने के लिए, OEM टोकन वैल्यू तय करना लेख पढ़ें.
OEM की शेयर की गई लाइब्रेरी में पसंद के मुताबिक बदलाव करना
टोकन वैल्यू के लिए अलग-अलग स्कीम (उदाहरण के लिए, मॉडल या ड्राइव मोड के हिसाब से अंतर) का इस्तेमाल करने के लिए, OEM, रनटाइम रिसोर्स ओवरले (आरआरओ) की मदद से OEM की शेयर की गई लाइब्रेरी को टारगेट करके, टोकन के लिए डाइनैमिक वैल्यू दे सकते हैं. ज़्यादा जानने के लिए, रनटाइम के दौरान ऐप्लिकेशन के संसाधनों की वैल्यू बदलना लेख पढ़ें.
टोकन वैल्यू सेट करने के लिए, OEM टोकन वैल्यू तय करना लेख पढ़ें.
OEM टोकन की वैल्यू डालना
टोकन की वैल्यू तय करने के लिए, स्टाइल OemStyle
में मौजूद उस एट्रिब्यूट की वैल्यू को ज़रूरी वैल्यू पर सेट करें.
<resources> <style name="OemStyle"> <item name="colorPrimary">#B0C5FF</item> <item name="colorOnPrimary">#002B76</item> <item name="colorPrimaryContainer">#003FA4</item> <item name="colorOnPrimaryContainer">#D9E2FF</item> … </style> </resources>
OEM वैल्यू के लिए ऑप्ट इन करना
ऐप्लिकेशन, OEM की ओर से दी गई टोकन वैल्यू ऐक्सेस कर सकें, इसके लिए OEM को पहले डिफ़ॉल्ट टोकन वैल्यू को बदलने के लिए ऑप्ट इन करना होगा. इसके लिए, enable_oem_tokens
बूलियन को true
के तौर पर कॉन्फ़िगर करें.
आरआरओ टोकन की वैल्यू
OemStyle
में टोकन वैल्यू सेट करने के तरीके की तरह ही, आरआरओ का इस्तेमाल स्टाइल में बदलाव करने के लिए किया जा सकता है, ताकि वैकल्पिक टोकन वैल्यू दी जा सकें.
<resources> <style name="OemStyle"> <item name="com.android.oem.tokens:colorPrimary">#B0C5FF</item> <item name="com.android.oem.tokens:colorOnPrimary">#002B76</item> <item name="com.android.oem.tokens:colorPrimaryContainer">#003FA4</item> <item name="com.android.oem.tokens:colorOnPrimaryContainer">#D9E2FF</item> … </style> </resources>
आरआरओ को स्टाइल पर शेयर की गई लाइब्रेरी के एट्रिब्यूट सेट करने चाहिए. इसके लिए, उन्हें शेयर की गई लाइब्रेरी का नाम बताना होगा.
आखिर में लोड होने की सुविधा कॉन्फ़िगर करना
जिन सिस्टम में टोकन शेयर की गई लाइब्रेरी का OEM लागू होता है उन्हें ऐप्लिकेशन क्लास के बाद, शेयर की गई लाइब्रेरी को लोड करने के लिए सिस्टम को कॉन्फ़िगर करना होगा. इसके लिए, सिस्टम पर config_sharedLibrariesLoadedAfterApp
कॉन्फ़िगरेशन में लाइब्रेरी का नाम (com.android.oem.tokens
) शामिल करें. अगर आपके पास Google Automotive Services (GAS) का ऐक्सेस है, तो यह ज़रूरी है कि आपने
<!-- The OEM token shared library will be loaded after app classes --> <string-array name="config_sharedLibrariesLoadedAfterApp" translatable="false"> <item>com.android.oem.tokens</item> </string-array>
सबसे सही तरीके
OEM टोकन लाइब्रेरी के लिए सबसे सही तरीके यहां बताए गए हैं.
अपडेट करने की सुविधा को ज़रूरत के हिसाब से चालू करना
अपडेट करने के लिए, यहां दी गई रणनीतियों को देखें.
OEM की शेयर की गई लाइब्रेरी
सिस्टम के साथ शेयर की गई लाइब्रेरी, सिस्टम इमेज पर पहले से इंस्टॉल होनी चाहिए. इसलिए, डिवाइसों में लाइब्रेरी पहले से मौजूद होनी चाहिए या लाइब्रेरी को ओवर-द-एयर (ओटीए) अपडेट के हिस्से के तौर पर जोड़ा जाना चाहिए. ज़्यादा जानने के लिए, ओटीए अपडेट देखें. हालांकि, सिस्टम इमेज पर OEM टोकन की शेयर की गई लाइब्रेरी के OEM बदलाव के स्टब को लागू करने से, डिवाइसों पर बाद में पूरी तरह से काम करने वाले अपडेट को पुश किया जा सकता है. इसके लिए, ओटीए की ज़रूरत नहीं होती.
शेयर की गई लाइब्रेरी के आरआरओ
आरआरओ को सिस्टम ऐप्लिकेशन के तौर पर इंस्टॉल करना ज़रूरी नहीं है. हालांकि, ऐसा करने से अपडेट करने का कुछ ऐसा तरीका मिलता है जो शायद आपके काम का हो.
- उपयोगकर्ताओं के साइन इन न होने पर, ऐप्लिकेशन अपने-आप अपडेट होना.
- उपयोगकर्ता इसे अनइंस्टॉल नहीं कर सकता (उपयोगकर्ता सिर्फ़ अपडेट अनइंस्टॉल कर सकते हैं).