परिशिष्ट C, कार के यूज़र इंटरफ़ेस (यूआई) प्लग इन एपीआई के साथ काम करने वाला कम से कम वर्शन

उम्मीद है कि OEM, car-ui-lib-plugin-apis (1.2.0 या इसके बाद के वर्शन) के नए वर्शन पर जल्द से जल्द स्विच कर लेंगे. आम तौर पर, OEM को ऐसा कोई प्लग इन शिप नहीं करना चाहिए जो पुराने वर्शन का इस्तेमाल करता हो.

यह अपडेट क्यों किया जा रहा है?

Java 8+ एपीआई, Android के पिछले वर्शन के साथ काम करते हैं. इसके लिए, Java 8+ एपीआई को डी-शुगर करने की सुविधा का इस्तेमाल किया जाता है. मौजूद नहीं होने वाले एपीआई को ऐप्लिकेशन में कॉम्पाइल किया जाता है. साथ ही, APKs के बाइट कोड को फिर से लिखा जाता है, ताकि प्लैटफ़ॉर्म पर लाइब्रेरी के बजाय, लागू किए गए एपीआई का रेफ़रंस दिया जा सके.

कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी के प्लग इन से, यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट के OEM लागू करने के लिए, car-ui-lib-plugin-apis इंटरफ़ेस के ज़रिए तय किए गए तरीकों का रेफ़रंस देना ज़रूरी है. ये तरीकों के रेफ़रंस, ऐप्लिकेशन से कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी के प्लग इन के लिए, रनटाइम के दौरान बनाए जाते हैं. ऐसा इस उम्मीद के साथ किया जाता है कि ऐप्लिकेशन और प्लग इन के लागू होने में, तरीकों के हस्ताक्षर एक जैसे हों.

कुछ बिल्ड सिस्टम, एपीआई को डिसुगर करने की सुविधा को हमेशा चालू रखते हैं. ऐसा, SDK टूल के किसी खास लेवल की ज़रूरी शर्तों की वजह से किया जाता है. ऐसा हो सकता है कि car-ui-lib-plugin-apis इंटरफ़ेस के लिए, डीसुगर किए गए तरीकों के हस्ताक्षर, ओईएम प्लगिन के लागू किए गए ऐसे तरीकों के हस्ताक्षर से मेल न खाएं जिन्हें डीसुगर नहीं किया गया है. इस वजह से, प्लगिन लोड नहीं हो पाते.

इस वजह से, Google के इंटरनल बिल्ड सिस्टम से कॉम्पाइल किए गए कुछ GAS ऐप्लिकेशन, कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी के प्लग इन के साथ काम नहीं करते. इसलिए, हमने Java 8 (और इसके बाद के वर्शन) के उन सभी एपीआई पर निर्भरता हटा दी है जिन्हें डी-शुगर करने की ज़रूरत होती है. इस बदलाव के लिए, car-ui-lib-plugin-apis के ज़रिए तय किए गए इंटरफ़ेस के एपीआई को अपडेट करना ज़रूरी है.

ओईएम प्लग इन के लिए ज़रूरी चरण

अपना एपीआई अपडेट करने के लिए, यह तरीका अपनाएं:

  1. car-ui-lib-plugin-apis के नए वर्शन का इस्तेमाल करने के लिए, प्लग इन को अपडेट करें. 1.2.0 या इसके बाद का नया वर्शन पाने के लिए, Google का मेवन रिपॉज़िटरी देखें.

  2. PluginFactoryOEMV4 इंटरफ़ेस लागू करने के लिए, प्लग इन लागू करने का तरीका अपडेट करें. OEM प्लग इन की मदद से कॉम्पोनेंट लागू करने पर, इस बदलाव के लिए यह तरीका अपनाना होगा. ओईएम के तौर पर, इन सुविधाओं को लागू करने के तरीके को अपडेट करें:

    1. ToolbarControllerOEMV2 लागू करने के लिए टूलबार.

    2. कॉन्टेंट की सूची में मौजूद आइटम, ताकि ContentListItemOEMV2 को बड़ा किया जा सके.

    3. ImeSearchInterfaceOEMV2 को बड़ा करने के लिए, खोज के नतीजों को मैनेज करने वाला आईएमई.

  3. कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी के नए वर्शन का इस्तेमाल करने के लिए, ऐप्लिकेशन को अपडेट करें.

इस अपडेट को लागू न करने पर क्या होगा?

अगर इस पेज पर दिए गए चरणों को किसी OEM प्लग इन के लिए पूरा नहीं किया जाता है, तो Google Automotive Services (GAS) जैसे ऐसे ऐप्लिकेशन जो शर्करा हटाने की प्रोसेस से गुज़रे हैं, वे कार यूज़र इंटरफ़ेस लाइब्रेरी प्लग इन के लागू होने को लोड नहीं कर पाते. साथ ही, प्लग इन के तंत्र की मदद से, OEM के हिसाब से कोई भी पसंद के मुताबिक बदलाव लागू नहीं होता.

कार की यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी के लिए, आरआरओ के ज़रिए किए गए मौजूदा कस्टमाइज़ेशन पर इस समस्या का कोई असर नहीं पड़ेगा. साथ ही, ये पहले की तरह ही काम करते रहेंगे.