اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release
بدلاً من aosp-main
لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
ملاحظات إصدار مكتبة واجهة المستخدم في السيارة
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
توضّح هذه الصفحة التعديلات التي تم إجراؤها على مكتبة واجهة المستخدم في السيارة في كل إصدار من الإصدارات التالية.
car-ui-lib 2.6.0
الميزات الجديدة
- تمت إضافة مستمع للنقر على شعار
CarUiToolbar
.
المشاكل التي تمّت معالجتها
- تم إصلاح مشكلة كانت تؤدي إلى بقاء محتوى مربّع الحوار الذي يتضمّن المزيد من الخيارات في
CarUiToolbar
قديمًا عند إجراء التعديلات من خلال المكوّن الإضافي.
- تم إصلاح مشكلة عدم ظهور شريط التمرير في
CarUiRecyclerView
بسبب
تطبيق عناصر مضمّنة غير صحيحة.
- تم إصلاح مشكلة كانت تحدث عندما يعرض المكوّن الإضافي قيمة فارغة لسمة
InsetsChangedListener
.
- تمت إضافة عملية تحقّق لفرض عدم استخدام المحتوى المعروض في
AppStyledView
Theme.CarUi
.
- تمّ إصلاح موضع
AppStyledView
التلقائي في الشاشات الكبيرة بالوضع الأفقي.
- تمت إضافة إمكانية تخصيص خلفية
AppStyledView
ودرجة التعتيم.
- تمت إضافة إمكانية إجراء مكالمات إلى
AppStyledDialog#setContentView()
بعد عرض
AppStyledView
.
تم إيقاف هذه الطرق نهائيًا:
CarUi#installBaseLayoutAround(View, InsetsChangedListener, boolean)
، استخدِم
CarUi#InsetsChangedListener(Context, View, InsetsChangedListener, boolean)
بدلاً من ذلك.
CarUi#installBaseLayoutAround(View, InsetsChangedListener, boolean,
boolean)
، استخدِم CarUi#InsetsChangedListener(Context, View,
InsetsChangedListener, boolean, boolean)
بدلاً من ذلك.
car-ui-lib-plugin-apis 1.5.0
الميزات الجديدة
- تمّت إضافة تخصيص لمراقب النقر على شعار
CarUiToolbar
.
تم إيقاف هذه العناصر نهائيًا:
PluginFactoryOEMV6
، استخدِم PluginFactoryOEMV7
بدلاً من ذلك.
ToolbarControllerOEMV2
، استخدِم ToolbarControllerOEMV3
بدلاً من ذلك.
car-ui-lib 2.5.1
المشاكل التي تمّت معالجتها
- تم إصلاح مشكلة في ProGuard كانت تمنع تحميل المكوّن الإضافي car-ui-lib.
- تم إصلاح التوافق مع الإصدارات المستقبلية للمكوّنات الإضافية التي قد تؤدي إلى حدوث خطأ في وقت التشغيل.
- يجب فرض أن يكون المكوّن الإضافي car-ui-lib تطبيقًا للنظام.
- تم إصلاح مشكلة عدم ظهور شريط التمرير في
CarUiRecyclerView
في بعض السيناريوهات.
- تم إصلاح مشكلة عدم تحديث علامات التبويب المحدّدة عند استخدام المكوّن الإضافي.
- تم إصلاح المشاكل المتعلّقة بإنشاء مثيل
SearchView
عند استخدام المكوّن الإضافي.
- بدء عملية الاستدعاء لحالة القيود المفروضة على تجربة المستخدم في خدمة السيارة باستخدام سياق النشاط
لضبط الشاشة بشكل صحيح
- تم تعديل التعليقات التوضيحية للقيمة الخالية.
car-ui-lib 2.5.0
المشاكل التي تمّت معالجتها
- وقت بدء تشغيل المكوّن الإضافي المحسَّن
- تم إصلاح مشكلة كانت تؤدي إلى عرض التطبيقات دائمًا القيمة 1 كحد أقصى لإصدار المكوّن الإضافي المتوافق.
- تمت إزالة ميزة استبدال المظهر لإجبار
Theme.CarUi
على استخدام AppStyledView
.
- تمت إضافة طريقة يمكن إلغاؤها لضبط العنوان في
ListPreferenceFragment
.
car-ui-lib-plugin-apis 1.4.0
الميزات الجديدة
- السماح للمصنّع الأصلي للجهاز بتخصيص
CarUiPreference
تم إيقاف هذه العناصر نهائيًا:
PluginFactoryOEMV5
، استخدِم PluginFactoryOEMV6
بدلاً من ذلك.
car-ui-lib 2.4.0
الميزات الجديدة
- تمت إضافة إمكانية استخدام
AppStyledView
.
المشاكل التي تمّت معالجتها
- تم تعديل
AppStyledRecyclerViewAdapter
لتصبح غير علنية.
- توفير طريقة سهلة للسياق مع تحسين
AppStyledDialogController
- تم نقل تعريف
AppStyledViewNavIcon
إلى AppStyledDialogController
.
- تمت إزالة ميزة الكتابة التلقائية للمظهر على
Theme.CarUi
في AppStyledView
.
- تمت إضافة انتقالات للسماح بعرض شاشات
AppStyledView
.
- تمت إضافة
car_ui_recycler_view_no_scrollbar
إلى قائمة العناصر التي يمكن
تداخلها.
- تم إنشاء مكتبة Gradle لـ
CarUiRecyclerView
espresso ViewActions
و
ViewMatchers
.
- تم إعادة صياغة طريقة عرض التطبيق لاستخدام
ScrollView
.
car-ui-lib-plugin-apis 1.3.0
الميزات الجديدة
تم إيقاف هذه العناصر نهائيًا:
PluginFactoryOEMV4
، استخدِم PluginFactoryOEMV5
بدلاً من ذلك.
RecyclerViewOEMV1
، استخدِم RecyclerViewOEMV2
بدلاً من ذلك.
OnScrollListenerOEMV1
، استخدِم RecyclerViewOEMV2.OnScrollListenerOEMV2
بدلاً من ذلك.
car-ui-lib 2.3.0
الميزات الجديدة
تمت إضافة مكوّن جديد:
تمت إضافة إمكانية استخدام سمات شريط التمرير التالية:
android:fadeScrollbars
android:scrollbars
android:scrollbarThumbVertical
android:scrollbarTrackVertical
android:scrollbarStyle
android:scrollbarFadeDuration
android:verticalScrollbarPosition
android:requiresFadingEdge
المشاكل التي تم حلّها
تم إصلاح CarUiRecyclerView
، الذي لم يحافظ على موضعه عند Activity
إعادة إنشائه.
تم حلّ مشكلة عدم توافق تسلسل ملفات الأشكال المصغرة بين رمز العميل و
خدمة IME.
تم تفعيل استخدام NavHostFragment
مع PreferenceFragment
.
car-ui-lib-plugin-apis 1.2.0
الميزات الجديدة
استبدال استخدام واجهات java.util.function
بواجهات مكتبة
التالية:
com.android.car.ui.plugin.oemapis.BiConsumer
com.android.car.ui.plugin.oemapis.Consumer
com.android.car.ui.plugin.oemapis.Function
تم إيقاف هذه العناصر نهائيًا:
PluginFactoryOEMV3
، استخدِم PluginFactoryOEMV4
بدلاً من ذلك.
ToolbarControllerOEMV1
، استخدِم ToolbarControllerOEMV2
بدلاً من ذلك.
ContentListItemOEMV1
، استخدِم ContentListItemOEMV2
بدلاً من ذلك.
ImeSearchInterfaceOEMV1
، استخدِم ImeSearchInterfaceOEMV2
بدلاً من ذلك.
تم استبدال تنفيذ المكتبة لواجهات القيمة الخالية بتنفيذات
androidx.annotations
.
car-ui-lib-plugin-apis 1.1.1
يُعدّل هذا الإصدار الإصدار minSdkVersion
إلى 28.
car-ui-lib 2.2.1
تشمل ميزات هذا الإصدار ما يلي:
- نقدّم لك
CarUiFooterPreference
- تعديل القيمة
minSdkVersion
إلى 28
car-ui-lib-plugin-apis 1.1.0
تشمل ميزات هذا الإصدار ما يلي:
- إيقاف
AppStyledViewControllerOEMV1
نقدّم لك AppStyledViewControllerOEMV2
تتضمّن التغييرات التي تم إجراؤها منذ AppStyledViewControllerOEMV1
:
public abstract int getContentAreaHeight();
public abstract int getContentAreaWidth();
إيقاف PluginFactoryOEMV1
وPluginFactoryOEMV2
نهائيًا
يقدّم هذا القسم لمحة عن واجهة PluginFactoryOEMV3
.
car-ui-lib 2.1.0
تشمل ميزات هذا الإصدار ما يلي:
إضافة واجهات برمجة تطبيقات عملاء AppStyledView
:
public int getContentAreaHeight();
public int getContentAreaWidth();
نقدّم لك CarUiPrimarySwitchPreference
تعديلات على باني AppStyledDialogController
لطلب Activity
بدلاً من Context
:
car-ui-lib-plugin-apis 1.0.1
يضيف هذا الإصدار تعليقات توضيحية حول القيم الخالية.
car-ui-lib-plugin-apis 1.0.0
يقدّم هذا الإصدار إمكانية استخدام واجهات برمجة التطبيقات التالية لمكوّنات car-ui-lib
الإضافية:
AppStyledViewDialog
CarUiRecyclerView
CarUiToolbar
CarUiListItems
car-ui-lib 2.0.0
يتيح هذا الإصدار، المتاح على Google
Maven،
استخدام المكوّنات التالية مع مكوّن car-ui-lib
:
AppStyledViewDialog
CarUiRecyclerView
CarUiToolbar
CarUiListItems
car-ui-lib 1.0.0
يتوفّر هذا الإصدار على AOSP لنظام التشغيل Android 12 والإصدارات الأقدم، ويوفّر
الدعم لما يلي:
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-06-12 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","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 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Car UI library release notes\n\nThis page describes updates made to the Car UI library in each of the releases\nlisted below.\n\ncar-ui-lib 2.6.0\n----------------\n\n### New features\n\n- Added a tap listener for the `CarUiToolbar` logo.\n\n### Issues addressed\n\n- Fixed an issue where `CarUiToolbar`'s overflow dialog content would remain stale when making the updates through the plugin.\n- Fixed an issue where `CarUiRecyclerView`'s scrollbar was not visible because incorrect insets were applied.\n- Fixed an issue when the plugin returned a null `InsetsChangedListener`.\n- Added a check to enforce content rendered in `AppStyledView` must not use `Theme.CarUi`.\n- Fixed default `AppStyledView` positioning in large landscape screens.\n- Added customization of `AppStyledView` background and dim amount.\n- Added support for calls to `AppStyledDialog#setContentView()` after `AppStyledView` is shown.\n\nDeprecated these methods:\n\n- `CarUi#installBaseLayoutAround(View, InsetsChangedListener, boolean)`, use `CarUi#InsetsChangedListener(Context, View, InsetsChangedListener, boolean)` instead.\n- `CarUi#installBaseLayoutAround(View, InsetsChangedListener, boolean,\n boolean)`, use `CarUi#InsetsChangedListener(Context, View,\n InsetsChangedListener, boolean, boolean)` instead.\n\ncar-ui-lib-plugin-apis 1.5.0\n----------------------------\n\n### New features\n\n- Added customization of `CarUiToolbar` logo tap listener.\n\nDeprecated these items:\n\n- `PluginFactoryOEMV6`, use `PluginFactoryOEMV7` instead.\n- `ToolbarControllerOEMV2`, use `ToolbarControllerOEMV3` instead.\n\ncar-ui-lib 2.5.1\n----------------\n\n### Issues addressed\n\n- Fixed a ProGuard issue that was preventing loading the car-ui-lib plugin.\n- Fixed forward compatibility for plugins that would cause NPE at runtime.\n- Enforce that car-ui-lib plugin has to be a system app.\n- Fixed `CarUiRecyclerView` not showing scrollbar in some scenarios.\n- Fixed selected tabs not updating when the plugin is used.\n- Fixed issues with instantiating `SearchView` when the plugin is used.\n- Initialize Car service UX restriction state callback using Activity context for correct display configuration.\n- Updated nullness annotations.\n\ncar-ui-lib 2.5.0\n----------------\n\n### Issues addressed\n\n- Optimized plugin startup time.\n- Fixed an issue where apps were always returning 1 as max supported plugin version.\n- Removed the overwriting of theme to force `Theme.CarUi` from `AppStyledView`.\n- Added overridable method to set title on `ListPreferenceFragment`.\n\ncar-ui-lib-plugin-apis 1.4.0\n----------------------------\n\n### New features\n\n- Allow OEM customization of `CarUiPreference`.\n\nDeprecated these items:\n\n- `PluginFactoryOEMV5`, use `PluginFactoryOEMV6` instead.\n\ncar-ui-lib 2.4.0\n----------------\n\n### New features\n\n- Added support for the transition to `AppStyledView`.\n\n### Issues addressed\n\n- Updated `AppStyledRecyclerViewAdapter` to no longer be public.\n- Provided a convenience method for context with optimization for `AppStyledDialogController`.\n- Moved the `AppStyledViewNavIcon` definition to `AppStyledDialogController`.\n- Removed forced overwriting of theme to `Theme.CarUi` in `AppStyledView`.\n- Added transitions to support the rendering of `AppStyledView` screens.\n- Added `car_ui_recycler_view_no_scrollbar` to the list of items that can be overlaid.\n- Created a Gradle library for `CarUiRecyclerView` espresso `ViewActions` and `ViewMatchers`.\n- Refactored the app-styled view to use `ScrollView`.\n\ncar-ui-lib-plugin-apis 1.3.0\n----------------------------\n\n### New features\n\nDeprecated these items:\n\n- `PluginFactoryOEMV4`, use `PluginFactoryOEMV5` instead.\n- `RecyclerViewOEMV1`, use `RecyclerViewOEMV2` instead.\n- `OnScrollListenerOEMV1`, use `RecyclerViewOEMV2.OnScrollListenerOEMV2` instead.\n\ncar-ui-lib 2.3.0\n----------------\n\n### New features\n\nAdded new component:\n\n- `CarUiShortcutsPopup`\n\nAdded support for the following scrollbar attributes:\n\n- `android:fadeScrollbars`\n- `android:scrollbars`\n- `android:scrollbarThumbVertical`\n- `android:scrollbarTrackVertical`\n- `android:scrollbarStyle`\n- `android:scrollbarFadeDuration`\n- `android:verticalScrollbarPosition`\n- `android:requiresFadingEdge`\n\n### Addressed issues\n\n- Fixed `CarUiRecyclerView`, which did not maintain position upon `Activity`\n recreation.\n\n- Resolved bitmap serialization incompatibility between the client code and\n the IME service.\n\n- Enabled usage of `NavHostFragment` with `PreferenceFragment`.\n\ncar-ui-lib-plugin-apis 1.2.0\n----------------------------\n\n### New features\n\nReplaced usage of `java.util.function` interfaces with the following library\ninterfaces:\n\n- `com.android.car.ui.plugin.oemapis.BiConsumer`\n- `com.android.car.ui.plugin.oemapis.Consumer`\n- `com.android.car.ui.plugin.oemapis.Function`\n\nDeprecated these items:\n\n- `PluginFactoryOEMV3`, use `PluginFactoryOEMV4` instead.\n- `ToolbarControllerOEMV1`, use `ToolbarControllerOEMV2` instead.\n- `ContentListItemOEMV1`, use `ContentListItemOEMV2` instead.\n- `ImeSearchInterfaceOEMV1`, use `ImeSearchInterfaceOEMV2` instead.\n\nReplaced the library implementation of nullness interfaces with implementations\nof `androidx.annotations`.\n\ncar-ui-lib-plugin-apis 1.1.1\n----------------------------\n\nThis release updates the `minSdkVersion` to 28.\n\ncar-ui-lib 2.2.1\n----------------\n\nThis release:\n\n- Introduces `CarUiFooterPreference`\n- Updates the `minSdkVersion` to 28.\n\ncar-ui-lib-plugin-apis 1.1.0\n----------------------------\n\nThis release:\n\n- Deprecates `AppStyledViewControllerOEMV1`\n- Introduces `AppStyledViewControllerOEMV2`\n\n- Incorporates changes from `AppStyledViewControllerOEMV1`:\n\n public abstract int getContentAreaHeight();\n public abstract int getContentAreaWidth();\n\n- Deprecates `PluginFactoryOEMV1` and `PluginFactoryOEMV2`\n\n- Introduces the `PluginFactoryOEMV3` interface.\n\ncar-ui-lib 2.1.0\n----------------\n\nThis release:\n\n- Adds `AppStyledView` client APIs:\n\n public int getContentAreaHeight();\n public int getContentAreaWidth();\n\n- Introduces `CarUiPrimarySwitchPreference`\n\n- Updates the `AppStyledDialogController` constructor to require `Activity`\n instead of `Context`:\n\n - Adds:\n\n public AppStyledDialogController(android.app.Activity);\n\n - Deprecates:\n\n public AppStyledDialogController(android.content.Context);\n\ncar-ui-lib-plugin-apis 1.0.1\n----------------------------\n\nThis release adds nullness annotations.\n\ncar-ui-lib-plugin-apis 1.0.0\n----------------------------\n\nThis release introduces support for the following `car-ui-lib` plugin APIs:\n\n- `AppStyledViewDialog`\n- `CarUiRecyclerView`\n- `CarUiToolbar`\n- `CarUiListItems`\n\ncar-ui-lib 2.0.0\n----------------\n\nThis version, available on [Google\nMaven](https://maven.google.com/web/index.html?#com.android.car.ui),\nintroduces `car-ui-lib` plugin support for these components:\n\n- `AppStyledViewDialog`\n- `CarUiRecyclerView`\n- `CarUiToolbar`\n- `CarUiListItems`\n\ncar-ui-lib 1.0.0\n----------------\n\nThis release is available on AOSP for Android 12 and lower and provides\nsupport for:\n\n- `AppStyledViewDialog`\n- [`CarUiRecyclerView`](/docs/devices/automotive/hmi/car_ui/caruirecyclerview)\n- [`CarUiToolbar`](/docs/devices/automotive/hmi/car_ui/toolbar_rro)\n- [`CarUiListItems`](/docs/devices/automotive/hmi/car_ui/caruilistitem)\n- Dialog\n- Resource customization through [runtime resource overlays (RROs)](/docs/core/architecture/rros)\n- [`PreferencesFragment`](/docs/devices/automotive/hmi/car_ui/caruipreference)\n- [Rotary support](/docs/devices/automotive/hmi/rotary_controller/oem_integration)\n- `WideScreenImeKeyboard`"]]