परिशिष्ट सी, कार यूआई प्लगइन एपीआई के लिए न्यूनतम संगत संस्करण

ओईएम से अपेक्षा की जाती है कि वे यथाशीघ्र car-ui-lib-plugin-apis (1.2.0 या उच्चतर) के नवीनतम संस्करण पर स्विच करें। आदर्श रूप से, ओईएम को किसी भी ऐसे प्लगइन को शिप नहीं करना चाहिए जो पुराने संस्करण का उपयोग करता हो।

यह अद्यतन क्यों?

जावा 8+ एपीआई को जावा 8+ एपीआई डीसुगरिंग समर्थन के माध्यम से एंड्रॉइड के पिछले संस्करणों के लिए समर्थित किया गया है। लापता एपीआई के कार्यान्वयन को ऐप्स में संकलित किया जाता है और प्लेटफ़ॉर्म पर लाइब्रेरी के बजाय कार्यान्वयन को संदर्भित करने के लिए एपीके के बाइट कोड को फिर से लिखा जाता है।

कार यूआई लाइब्रेरी प्लगइन से यूआई घटकों के OEM कार्यान्वयन को लोड करने के लिए car-ui-lib-plugin-apis इंटरफेस द्वारा परिभाषित तरीकों के संदर्भ की आवश्यकता होती है। ये विधि संदर्भ रनटाइम पर ऐप्स से कार यूआई लाइब्रेरी प्लगइन्स में इस उम्मीद के साथ बनाए जाते हैं कि विधि हस्ताक्षर ऐप और प्लगइन कार्यान्वयन में समान हैं।

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

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

OEM प्लगइन्स के लिए आवश्यक चरण

अपने एपीआई को अपडेट करने के लिए इन चरणों का पालन करें:

  1. car-ui-lib-plugin-apis के नवीनतम संस्करण का उपयोग करने के लिए प्लगइन कार्यान्वयन को अपडेट करें। (1.2.0 या उच्चतर) का नवीनतम संस्करण प्राप्त करने के लिए, Google का मावेन रिपोजिटरी देखें।

  2. PluginFactoryOEMV4 इंटरफ़ेस को लागू करने के लिए प्लगइन कार्यान्वयन को अपडेट करें। जब किसी घटक को OEM प्लगइन द्वारा कार्यान्वित किया जाता है तो इस परिवर्तन के लिए निम्नलिखित चरणों की आवश्यकता होती है। इसके OEM कार्यान्वयन को अद्यतन करें:

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

    2. सामग्री सूची आइटम, ContentListItemOEMV2 का विस्तार करने के लिए।

    3. IME खोज परिणाम सौंपने, ImeSearchInterfaceOEMV2 का विस्तार करने के लिए।

  3. कार यूआई लाइब्रेरी के नवीनतम संस्करण का उपयोग करने के लिए ऐप को अपडेट करें।

यदि यह अद्यतन लागू नहीं किया गया तो क्या होगा?

यदि इस पृष्ठ पर दिए गए चरण ओईएम प्लगइन के लिए पूरे नहीं हुए हैं, तो Google ऑटोमोटिव सर्विसेज (जीएएस) जैसे डिसुगर्ड ऐप्स, कार यूआई लाइब्रेरी प्लगइन के कार्यान्वयन को लोड करने में विफल रहते हैं और प्लगइन तंत्र के माध्यम से कोई ओईएम अनुकूलन लागू नहीं होता है।

कार यूआई लाइब्रेरी के लिए मौजूदा आरआरओ अनुकूलन इस समस्या से प्रभावित नहीं हैं और हमेशा की तरह काम करते रहेंगे।