27 মার্চ, 2025 থেকে, আমরা AOSP তৈরি করতে এবং অবদান রাখতে aosp-main
এর পরিবর্তে android-latest-release
ব্যবহার করার পরামর্শ দিচ্ছি। আরও তথ্যের জন্য, AOSP-তে পরিবর্তনগুলি দেখুন।
পরিশিষ্ট সি, কার UI প্লাগইন API-এর জন্য ন্যূনতম সামঞ্জস্যপূর্ণ সংস্করণ
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
OEMs যত তাড়াতাড়ি সম্ভব car-ui-lib-plugin-apis
(1.2.0 বা উচ্চতর) এর নতুন সংস্করণে স্যুইচ করবে বলে আশা করা হচ্ছে। আদর্শভাবে, OEM গুলি পুরানো সংস্করণ ব্যবহার করে এমন কোনও প্লাগইন পাঠানো উচিত নয়৷
কেন এই আপডেট?
জাভা 8+ এপিআই জাভা 8+ এপিআই ডিসুগারিং সমর্থনের মাধ্যমে অ্যান্ড্রয়েডের পূর্ববর্তী সংস্করণগুলির জন্য সমর্থিত। অনুপস্থিত API-এর বাস্তবায়ন অ্যাপে কম্পাইল করা হয় এবং প্ল্যাটফর্মে লাইব্রেরির পরিবর্তে বাস্তবায়নের উল্লেখ করার জন্য APK-এর বাইট কোড পুনরায় লেখা হয়।
একটি কার UI লাইব্রেরি প্লাগইন থেকে UI উপাদানগুলির OEM বাস্তবায়ন লোড করার জন্য car-ui-lib-plugin-apis
ইন্টারফেস দ্বারা সংজ্ঞায়িত পদ্ধতির রেফারেন্সিং প্রয়োজন৷ এই পদ্ধতির রেফারেন্সগুলি অ্যাপ থেকে কার UI লাইব্রেরি প্লাগইনগুলিতে রানটাইমে তৈরি করা হয় এই প্রত্যাশার সাথে যে পদ্ধতি স্বাক্ষরগুলি অ্যাপ এবং প্লাগইন বাস্তবায়নে অভিন্ন।
কিছু বিল্ড সিস্টেম একটি নির্দিষ্ট ন্যূনতম SDK স্তরের প্রয়োজনীয়তার কারণে সর্বদা API ডিসুগারিং সক্ষম করে। car-ui-lib-plugin-apis
ইন্টারফেসের জন্য Desugared পদ্ধতি স্বাক্ষরগুলি একটি OEM প্লাগইন বাস্তবায়নের সাথে মেলে না যা ডিসুগার করা হয়নি, যার ফলে প্লাগইনগুলি লোড হতে ব্যর্থ হয়৷
ফলস্বরূপ, অভ্যন্তরীণ Google বিল্ড সিস্টেমের সাথে সংকলিত কিছু GAS অ্যাপ কার UI লাইব্রেরি প্লাগইনের সাথে সামঞ্জস্যপূর্ণ নয়। অতএব, আমরা জাভা 8 (এবং উচ্চতর) এপিআইগুলির উপর সমস্ত নির্ভরতা সরিয়ে দিয়েছি যার জন্য ডিসুগারিং প্রয়োজন। এই পরিবর্তনের জন্য car-ui-lib-plugin-apis
দ্বারা সংজ্ঞায়িত ইন্টারফেসের API-তে আপডেট প্রয়োজন।
OEM প্লাগইনগুলির জন্য প্রয়োজনীয় পদক্ষেপ
আপনার API আপডেট করতে এই পদক্ষেপগুলি অনুসরণ করুন:
car-ui-lib-plugin-apis
এর সর্বশেষ সংস্করণ ব্যবহার করতে প্লাগইন বাস্তবায়ন আপডেট করুন। (1.2.0 বা উচ্চতর) এর সর্বশেষ সংস্করণ পেতে, Google এর Maven Repository দেখুন।
PluginFactoryOEMV4
ইন্টারফেস বাস্তবায়নের জন্য প্লাগইন বাস্তবায়ন আপডেট করুন। OEM প্লাগইন দ্বারা একটি উপাদান প্রয়োগ করা হলে এই পরিবর্তনের জন্য নিম্নলিখিত পদক্ষেপগুলি প্রয়োজন৷ এর OEM বাস্তবায়ন আপডেট করুন:
টুলবার, ToolbarControllerOEMV2
বাস্তবায়ন করতে।
বিষয়বস্তুর তালিকা আইটেম, ContentListItemOEMV2
প্রসারিত করতে।
IME অনুসন্ধান ফলাফল হস্তান্তর, ImeSearchInterfaceOEMV2
প্রসারিত করতে।
কার UI লাইব্রেরির সর্বশেষ সংস্করণ ব্যবহার করতে অ্যাপটি আপডেট করুন।
এই আপডেট প্রয়োগ না হলে কি হবে?
যদি এই পৃষ্ঠায় প্রদত্ত পদক্ষেপগুলি একটি OEM প্লাগইনের জন্য সম্পূর্ণ না হয়, তাহলে desugared অ্যাপ, যেমন Google Automotive Services (GAS), কার UI লাইব্রেরি প্লাগইনের বাস্তবায়ন লোড করতে ব্যর্থ হয় এবং প্লাগইন প্রক্রিয়ার মাধ্যমে কোনো OEM কাস্টমাইজেশন প্রয়োগ করা হয় না।
কার UI লাইব্রেরির জন্য বিদ্যমান RRO কাস্টমাইজেশনগুলি এই সমস্যা দ্বারা প্রভাবিত হয় না এবং যথারীতি কাজ চালিয়ে যায়।
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-06-12 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-06-12 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],[],null,["# Appendix C, minimum compatible version for Car UI Plugin API\n\nOEMs are expected to switch to the newest version of `car-ui-lib-plugin-apis`\n(1.2.0 or higher) as soon as possible. Ideally, OEMs shouldn't ship any plugin\nthat uses an older version.\n\nWhy this update?\n----------------\n\n[Java 8+](https://developer.android.com/studio/write/java8-support-table) APIs\nare supported for previous versions of Android through [Java 8+ API desugaring\nsupport](https://developer.android.com/studio/write/java8-support#library-desugaring).\nImplementations of missing APIs are compiled into apps and the byte code of APKs\nare rewritten to reference the implementations instead of the libraries on the\nplatform.\n\nLoading OEM implementations of UI components from a Car UI Library plugin\nrequires the referencing of methods defined by `car-ui-lib-plugin-apis`\ninterfaces. These method references are made from apps to Car UI Library plugins\nat runtime with the expectation that method signatures are identical in app and\nplugin implementations.\n\nSome build systems enable API desugaring at all times due to requirements of a\nspecific minimum SDK level. Desugared method signatures for\n`car-ui-lib-plugin-apis` interfaces may not match those in an OEM plugin\nimplementation that has not been desugared, which results in plugins failing to\nload.\n\nAs a result, some GAS apps compiled with the internal Google build system are\nincompatible with the Car UI Library plugin. Therefore, we've removed all\ndependencies on Java 8 (and higher) APIs that require desugaring. This change\nrequires updates to the API of the interfaces defined by\n`car-ui-lib-plugin-apis`.\n\nRequired steps for OEM plugins\n------------------------------\n\nFollow these steps to update your API:\n\n1. Update the plugin implementation to use the latest version of\n `car-ui-lib-plugin-apis`. To get the latest version of (1.2.0 or higher),\n see [Google's Maven\n Repository](https://maven.google.com/web/index.html#com.android.car.ui:car-ui-lib-plugin-apis).\n\n2. Update the plugin implementation to implement the `PluginFactoryOEMV4`\n interface. This change requires the following steps when a component is\n implemented by the OEM plugin. Update the OEM implementation of:\n\n 1. Toolbar, to implement `ToolbarControllerOEMV2`.\n\n 2. Content list items, to extend `ContentListItemOEMV2`.\n\n 3. IME search results handing, to extend `ImeSearchInterfaceOEMV2`.\n\n3. Update the app to use the latest version of the Car UI Library.\n\nWhat happens if this update is not applied?\n-------------------------------------------\n\nIf the steps provided on this page aren't completed for an OEM plugin, desugared\napps, such as the Google Automotive Services (GAS), fail to load implementations\nof the Car UI Library plugin and no OEM customizations are applied through the\nplugin mechanism.\n\nExisting RRO customizations for the Car UI Library are not affected by this\nissue and continue to perform as usual."]]