تطبيق سيارة
آخر تعديل | الإصدار المستقر | إصدار المرشح | الإصدار التجريبي | إصدار أولي |
---|---|---|---|---|
1 تشرين الثاني (نوفمبر) 2023 | 1.2.0 | 1.4.0-rc01 | - | - |
إعلان التبعيات
لإضافة تبعية إلى مكتبة تطبيقات السيارة، يجب عليك إضافة مستودع Google Maven إلى مشروعك. يمكنك الاطّلاع على مستودع Maven من Google للحصول على مزيد من المعلومات.
أضِف التبعيات للعناصر التي تحتاجها في ملف build.gradle
لتطبيقك أو الوحدة:
رائع
dependencies { implementation "androidx.car.app:app:1.2.0" // For Android Auto specific functionality implementation "androidx.car.app:app-projected:1.2.0" // For Android Automotive specific functionality implementation "androidx.car.app:app-automotive:1.2.0" // For testing testImplementation "androidx.car.app:app-testing:1.2.0" }
Kotlin
dependencies { implementation("androidx.car.app:app:1.2.0") // For Android Auto specific functionality implementation("androidx.car.app:app-projected:1.2.0") // For Android Automotive specific functionality implementation("androidx.car.app:app-automotive:1.2.0") // For testing testImplementation("androidx.car.app:app-testing:1.2.0") }
لمزيد من المعلومات حول الاعتماديات، يُرجى الاطّلاع على مقالة إضافة تبعيات الإصدار.
ملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إخبارنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة تصويتك إلى مشكلة حالية من خلال النقر على زر النجمة.
راجع وثائق "أداة تتبُّع المشاكل" للحصول على مزيد من المعلومات.
الإصدار 1.4
الإصدار 1.4.0-rc01
1 تشرين الثاني (نوفمبر) 2023
تم إصدار androidx.car.app:app-*:1.4.0-rc01
بدون تغييرات ملحوظة. يحتوي الإصدار 1.4.0-rc01 على هذه الالتزامات..
الإصدار 1.4.0-beta02
20 أيلول (سبتمبر) 2023
تم إطلاق "androidx.car.app:app-*:1.4.0-beta02
". يحتوي الإصدار 1.4.0-beta02 على هذه الالتزامات.. هذه النسبة مماثلة تقريبًا للإصدار التجريبي 01، ولكنّها ستقلّل من متطلبات السمة compileSdk
إلى 33.
إصلاح الأخطاء
- إصلاح خطأ يحدث فيه عدم ظهور شاشات التحميل على علامات التبويب بشكل مناسب (cae860)
الإصدار 1.4.0-beta01
9 آب (أغسطس) 2023
تم إطلاق "androidx.car.app:app-*:1.4.0-beta01
". يحتوي الإصدار 1.4.0-beta01 على هذه الالتزامات..
ملاحظة: يتطلّب الإصدار 1.4-beta01 توفُّر الرمز Sdk34 الذي لا يزال في حالة مطوّر البرامج. سيصحح الإصدار 1.4-beta02 هذه المشكلة. وبدلاً من ذلك، يمكنك إضافة
android.suppressUnsupportedCompileSdk=34
إلى ملفsettings.gradle
الخاص بمشروعك لإيقاف التحذير مؤقتًا بشكل آمن.
الميزات الجديدة
- عرض خريطة التجميع للآلات لتطبيقات التنقّل
- نموذج علامة تبويب جديد لتحسين تنسيق التطبيق / سهولة الاستخدام
- إتاحة حدود المهام التكيُّفية
- الإجراءات الثانوية على عناصر القائمة
تغييرات واجهة برمجة التطبيقات
- راجع alpha02
الإصدار 1.4.0-alpha02
26 تموز (يوليو) 2023
تم إطلاق "androidx.car.app:app-*:1.4.0-alpha02
". يحتوي الإصدار 1.4.0-alpha02 على هذه الالتزامات.
- من المفترض أن يكون إصدار Alpha02 استعدادًا للإصدار التجريبي Alpha01.
الميزات الجديدة
- عرض الخريطة في دعم مجموعة الأدوات في تطبيقات التنقّل
- تمت إضافة علامات تبويب للتطبيقات لتحسين تجربة التنسيق
- تمت إضافة خيارات عرض نموذج القائمة / الشبكة
- تمت إضافة فئات جديدة للطقس والتواصل
- نقل واجهات برمجة تطبيقات متعددة إلى إصدار CarApi 7 التالي
تغييرات واجهة برمجة التطبيقات
- إضافة حقول الوسائط المتعددة إلى
CarMessage
(I5aaf6) - إضافة إجراءات مخصصة إلى
ConversationItem
في مكتبة تطبيقات السيارة (Ie5ed6) - إضافة محتوى إضافي للإشارة إلى تشغيل الوسائط بتنسيق صوتي غامر وعرض شعار تنسيق المحتوى (Icb5bb)
- يمكنك إضافة نوع إجراء جديد، وواجهة برمجة تطبيقات
ActionsConstraints
لتوفير زر الإنشاء. (I31661) - تم تحقيق
set/getTemplate
باسمset/get ContentTemplate
(Ica036). - ستكون مَعلمة النموذج الآن
@NonNull
. مستندات تحديث واجهة برمجة التطبيقاتMapWithContentTemplate
(I0f8ed) - إزالة علامة
@ExperimentalCarApi
للإجراءات فيListTemplate
لإطلاقها في الإصدار 1.4 من CAL (I2cfcb) - تتم إزالة علامة
@ExperimentalCarApi
لـTabTemplate
(Ifcb82) - إزالة تعليقات
@ExperimentalCarApi
التوضيحية من الإجراءات الثانوية وعناصر الزينة للصف (I8487e) - إضافة معرّف محتوى علامة التبويب النشطة إلى
TabTemplate
وإيقاف الحالة النشطة في علامات التبويب (I96932) - إضافة سمة
ItemImageShape
إلىGridTemplate
(Ibf431) - أضِف السمة
ItemSize
إلىGridTemplate
التي تتحكّم في حجم عناصر الشبكة وفقًا لمجموعات البيانات الصغيرة والمتوسطة والكبيرة النسبية. (Icdb3b) - إتاحة الوصول إلى واجهة برمجة التطبيقات للمطوّرين للحصول على نسخة من حزمة الشاشة الحالية (I48107)
- إضافة فئة لتطبيقات الطقس إلى Car App Library (I2be44)
- إضافة فئة للاتصال بالتطبيقات إلى مكتبة تطبيقات السيارة (Icab33)
- تم استبدال
GridItem.Builder#setBadge()
بطريقةsetImage()
ذات التحميل الزائد (Id2000) - إضافة خاصية الرمز إلى الشارة (I629b2)
- إضافة طريقة لضبط لون خلفية شارة النقطة (I6411c)
- يمكنك إضافة سمة الشارة إلى
GridItem
، ما يسمح بعرض الشارة أعلى صورةGridItem
. (I95de7) - تمت إضافة عنصر شارة تجريبي سيمثل شارة يتم عرضها فوق الصورة. (I9878d)
الإصدار 1.4.0-alpha01
22 شباط (فبراير) 2023
تم إطلاق "androidx.car.app:app-*:1.4.0-alpha01
". يحتوي الإصدار 1.4.0-alpha01 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- إضافة إجراءات عالية المستوى إلى
GridTemplate
في مكتبة تطبيقات السيارة (Id0191) - لإضافة إجراءات عالية المستوى إلى
ListTemplate
في مكتبة تطبيقات السيارة (I9efab) - إضافة عناصر إضافية لربط العنوان الفرعي لعنصر الوسائط أو وصفه بعناصر الوسائط الأخرى (Ic84bf)
- تحديث مستوى واجهة برمجة التطبيقات لإجراءات الصف إلى المستوى 6. (Ie0a69)
- إضافة عمليات معاودة الاتصال بالمراسلة إلى A4C (Ie3986)
إصلاح الأخطاء
- أضِف مراجع مستندات جافا غير متوفرة لـ
CarMessage
. (I5db1c) - إلغاء
equals()
وhashCode()
لـConversationItem
وCarMessage
(I6fd10) - تحسين عملية التحقق من صحة
ConversationItem.mMessages
(تتطلب قيمة غير فارغة أو غير فارغة (Iafc51) - أضف تعليقات
@Keep
التوضيحية إلىConversationItem
حقلاً (I5d250) - تحديث مستندات جافا لتزيين الصف والإجراءات الثانوية. (I000b6)
الإصدار 1.3
الإصدار 1.3.0-rc01
7 كانون الأول (ديسمبر) 2022
تم إطلاق "androidx.car.app:app-*:1.3.0-rc01
". يحتوي الإصدار 1.3.0-rc01 على هذه الالتزامات.
- إصلاح أخطاء بسيطة من الإصدار التجريبي 01. ما مِن تغييرات رئيسية.
الإصدار 1.3.0-beta01
7 أيلول (سبتمبر) 2022
تم إصدار androidx.car.app:app:1.3.0-beta01
وandroidx.car.app:app-projected:1.3.0-beta01
وandroidx.car.app:app-automotive:1.3.0-beta01
وandroidx.car.app:app-testing:1.3.0-beta01
. يحتوي الإصدار 1.3.0-beta01 على هذه الالتزامات.
- يمكن الآن لتطبيقات السيارات التي تم إنشاؤها باستخدام هذه المكتبة الانتقال إلى "متجر Play" باستخدام المستوى 5 من واجهة برمجة التطبيقات (يُرجى الاطّلاع على دليل التطوير). تتوافق الميزات التي تم نشر تعليقات توضيحية عليها باستخدام المستوى 5 من واجهة برمجة التطبيقات والإصدارات الأقدم مع كل من Android Auto 8.1 والإصدارات الأحدث وGoogle Automotive App Host 1.4 والإصدارات الأحدث.
الميزات الجديدة
بالإضافة إلى الإمكانات المُضافة إلى الإصدار 1.3.0 من الإصدار alpha01 من "مكتبة تطبيقات السيارة"، تمت إضافة الميزات التالية كجزء من الإصدار التجريبي 1 (لا تتضمّن جميع الميزات هنا إلا تغييرات جانب المضيف بدون إجراء أي تغييرات على واجهة برمجة التطبيقات):
- وسيستمر ظهور شريط التنقّل العائم حتى عندما يكون المستخدم في شاشة اختيار مستندة إلى الخريطة في
PlaceListNavigationTemplate
وRoutePreviewNavigationTemplate
وMapTemplate
. ويمكنك إجراء ذلك من خلال تعديل معلومات التنقّل من خلالNavigationManager.updateTrip()
. - يمكنك تفعيل زر الإجراء في
FLAG_DEFAULT
لإضافة رسوم متحركة للمهلة. سيتم النقر على هذا الزر تلقائيًا بعد انتهاء المهلة. ([API 5 - All Templates]
) - لا يتم اقتطاع النص الفرعي لـ
Row
عندما تكون السيارة مركونة، ولكن يتم اقتطاعه إلى سطرين أثناء القيادة. ([API 5 - All Templates]
) - حالة إيقاف الدعم لـ
Action
وToggle
وRow
([API 5 - All Templates]
)
تغييرات واجهة برمجة التطبيقات
- تخفيف القيود في قائمة
MapTemplate
لإتاحة القوائم القابلة للاختيار (I961ed) - أزل القيد على "إجراءات العنوان" للسماح بالرموز المخصصة. (Iad28f)
- أضِف قيد
setOnClickListenerAllowed()
إلىActionsConstraints
. حيث تم السماح لـAction
بضبطOnClickDelegate()
على الإجراءات باستثناء أنواع الرموز العادية. (TYPE_APP_ICON
وTYPE_BACK
وTYPE_PAN
) (I3c745)
إصلاح الأخطاء
- تمت إضافة توافق بين الإصدار 1.4 والإصدارات الأحدث من مضيف نماذج Android Automotive مع الشاشات المنحنية (
[Host change]
).
الإصدار 1.3.0-alpha01
27 تموز (يوليو) 2022
تم إصدار androidx.car.app:app:1.3.0-alpha01
وandroidx.car.app:app-projected:1.3.0-alpha01
وandroidx.car.app:app-automotive:1.3.0-alpha01
وandroidx.car.app:app-testing:1.3.0-alpha01
. يحتوي الإصدار 1.3.0-alpha01 على هذه الالتزامات.
تتوافق الميزات التي تم إضافة تعليقات توضيحية إليها باستخدام المستوى 5 من واجهة برمجة التطبيقات مع الإصدار 7.9 من Android Auto والإصدارات الأحدث.
الميزات الجديدة
- المستوى الخامس من واجهة برمجة التطبيقات: ميزة
MapTemplate
الجديدة التي يمكن أن تستخدمها تطبيقات التنقّل لعرض جزء من المحتوى أو عرض محتوى بجانب الخريطة (If5826 وIf44b8) - واجهة برمجة التطبيقات المستوى 5: واجهة برمجة تطبيقات جديدة في
CarAudioRecord
تسمح بتسجيل إدخال الصوت عبر ميكروفون المركبة المضيفة (I5e71a) - واجهة برمجة التطبيقات المستوى 5: واجهة برمجة تطبيقات
SuggestionManager
جديدة للسماح للتطبيقات بتقديم اقتراحات إلى المضيف (I5c103) - API المستوى 5: واجهة برمجة تطبيقات
Alert
جديدة يتم عرضها في إشعارات السياق علىNavigationTemplate
(I163a7 وI5ad70) - المستوى الخامس من واجهة برمجة التطبيقات: مكوّنات
Header
وMapController
جديدة لتسهيل إعادة الاستخدام في جميع النماذج (If5826) - تمت إضافة
androidx.car.app.category.POI
كفئة لتفعيل تطبيقات نقاط الاهتمام (وتم إيقافandroidx.car.app.category.PARKING
وandroidx.car.app.category.CHARGING
نهائيًا) (I59da1).
تغييرات واجهة برمجة التطبيقات
- واجهة برمجة التطبيقات المستوى 5: طريقة
onClick
جديدة في واجهةSurfaceCallback
للسماح بتفاعل النقر على الخريطة (Ia9777) - المستوى 5 من واجهة برمجة التطبيقات: علامتان جديدتان
Action.FLAG_IS_PERSISTENT
وAction.FLAG_DEFAULT
لوصفAction
(I96318 وI5ad70) - مستوى واجهة برمجة التطبيقات 5: حالة تفعيل/إيقاف جديدة لمكوّنات
Action
وRow
وToggle
(دعم المضيف الذي يقارب الإصدار 1.3.0-beta01 من المكتبة) (Id8a09) - المستوى 5 من واجهة برمجة التطبيقات: يمكنك تفضيل مكوِّن
Header
الجديد من خلالsetHeader
علىPlaceListNavigationTemplate.Builder
وRoutePreviewNavigationTemplate.Builder
، مع الإيقاف النهائي للطريقتينsetTitle
وsetHeaderAction
الحاليين (I30e6a) - المستوى الخامس من واجهة برمجة التطبيقات: طريقة
setOnContentRefreshListner
جديدة علىPlaceListMapTemplate.Builder
وPlaceListNavigationTemplate.Builder
للاستخدام مع عمليات تنفيذ واجهةOnContentRefreshListner
الجديدة. - المستوى 5 من واجهة برمجة التطبيقات:
setTripText
وsetTripIcon
جديدان فيTravelEstimate.Builder
لتخصيص بطاقة تقدير السفر (Idcc6d وIc620d) - إضافة دعم
CarIconSpan
في عنوانPaneTemplate
(Ia1ee0) - إضافة دعم
CarIconSpan
في عنوان ونصRow
(Ic1e3c) - يمكن أن تحتوي خريطة
ActionStrip
الآن على ما يصل إلى أربعة إجراءات (If3522). - تحديث المستوى 5 من Car App API (I26b8e)
- العناوين/العناوين اختيارية الآن لكل من
PlaceListMapTemplate
وPlaceListNavigationTemplate
وRoutePreviewNavigationTemplate
وGridTemplate
وListTemplate
وLongMessageTemplate
وMessageTemplate
وPaneTemplate
وSignInTemplate
(I2078d وIcadde)
إصلاح الأخطاء
- تم تعديل
PaneTemplate
قواعد لتغيير حجم الصورة لتصبح مربع إحاطة مربع (Idd72e). - تم إصلاح استثناء يحدث إذا تم تعديل تكديس الشاشة بعد
State.DESTROYED
. (I3c8eb) - تمت إضافة عملية تحقق فارغة لاسترداد رمز التطبيق (I3f710).
- تحديث واجهة برمجة تطبيقات أجهزة السيارة لاستخدام
STATUS_UNKNOWN
بدلاً منSTATUS_UNAVAILABLE
تلقائيًا (Ic9444) - التحقّق من توفّر الشاشة قبل إنشاء السطح (Ice027a)
- إصلاح خطأ
CarValue.equals()
الذي يتضمنSTATUS_UNIMPLEMENTED
(I24451)
الإصدار 1.2
الإصدار 1.2.0
تشرين الثاني (نوفمبر) 2022
تم إطلاق "androidx.car.app:app-*:1.2.0
". يحتوي الإصدار 1.2.0 على هذه الالتزامات.
- هذا إصدار من أجل تثبيت الحركة، ولن نجري أي تغييرات مقارنةً بالإصدار 1.2.0-rc01.
الإصدار 1.2.0-rc01
23 آذار (مارس) 2022
تم إطلاق "androidx.car.app:app-*:1.2.0-rc01
". يحتوي الإصدار 1.2.0-rc01 على هذه الالتزامات.
- هذا إصدار من أجل تثبيت حركة البيانات، ولن نجري أي تغييرات في واجهة برمجة التطبيقات مقارنةً بالإصدار
v1.2.0-beta02
. تمت إضافة ميزات تجريبية جديدة (المستوى 5 من واجهة برمجة التطبيقات) مخصّصة لإصدارات Android Auto وAndroid Automotive المستقبلية.
إصلاح الأخطاء
- تم إصلاح استثناء يحدث إذا تم تعديل تكديس الشاشة بعد
State.DESTROYED
. (I3c8eb) - تم تعديل واجهة برمجة التطبيقات
CarSensors
API للإشارة إلى أنّه لم يتم تنفيذها بموجب سياسة AAOS (Idd57b). - تم تعديل
PlaceListMapTempalte.Builder#setCurrentLocationEnabled
للإشارة إلى أنّ ACCESS_COARSE_LOCATION سيكون كافيًا للميزة (I510c2). - تم جعل رقم المخرج اختياريًا لأنواع مناورة الدوّارات ذات الزاوية (Ife7d1)
الإصدار 1.2.0-beta02
26 كانون الثاني (يناير) 2022
تم إطلاق "androidx.car.app:app-*:1.2.0-beta02
". يحتوي الإصدار 1.2.0-beta02 على هذه الالتزامات.
يمكن الآن نشر تطبيقات السيارات التي تم إنشاؤها باستخدام إصدار المكتبة هذا الذي يستهدف النظام الأساسي Android Automotive OS
على قناة الاختبار المفتوحة في "متجر Play". يُرجى الرجوع إلى دليل التطوير للحصول على مزيد من التفاصيل.
تتوافق الميزات التي تم وضع تعليقات توضيحية عليها باستخدام المستوى 4 من واجهة برمجة التطبيقات والإصدارات الأدنى مع الإصدار 7.2 من Android Auto
والإصدارات الأحدث ونظام التشغيل Android Automotive OS
الجديد. راجِع قسم Known Issues
أدناه للاطّلاع على التنبيهات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة واجهة برمجة تطبيقات
setOnContentRefreshListener
التجريبية إلى نماذج نقاط الاهتمام (I6bf22).
إصلاح الأخطاء
- تم إصلاح تسرب الذاكرة في
CarAppService
عند إلغاء ربط مضيف السيارة. (I5c9ca، b/203594731) - تم تحديث مستند javadoc على
CarAppActivity
ليتضمن متطلبات وضع تشغيل المهمّة منفردة (Id2f95) - تقليل العيب البصري في السيرة الذاتية. (Iff7e0)
المشاكل المعروفة
- ستبدأ خرائط
ActionStrip
فيPlaceListNavigationTemplate
وRoutePreviewNavigateTemplate
في التوفُّر في الإصداراتAndroid Auto
وAndroid Automotive OS
القادمة.
الإصدار 1.2.0-alpha02
15 كانون الأول (ديسمبر) 2021
تم إطلاق "androidx.car.app:app-*:1.2.0-alpha02
". يحتوي الإصدار 1.2.0-alpha02 على هذه الالتزامات.
تمت ترقية الميزات التي تمت إضافة تعليقات توضيحية إليها باستخدام المستوى 4 من واجهة برمجة التطبيقات من المستوى التجريبي إلى الثابت، بما في ذلك الخرائط ActionStrip
في PlaceListNavigationTemplate
وRoutePreviewNavigateTemplate
وصورة CarIcon
في Pane
ثانية وQRCodeSignInMethod
وإمكانية ضبط تلميحات العرض (مثل العلامات) في Action
.
الميزات الجديدة
- في الإصدار Android Auto 7.1 أو الإصدارات الأحدث، تمت زيادة الحد الأقصى للعناصر في
Pane
من 2 إلى 4.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة طريقة
toString()
تجريبية إلىCarUnit
(I36a3b).
إصلاح الأخطاء
- تم إصلاح عطل حدث في
CarAppPermissionActivity
في حال إيقاف معاودة الاتصال (If9823) - تم تغيير حد القوائم التلقائي في
Pane
إلى 4 (I0068b).
الإصدار 1.2.0-alpha01
3 تشرين الثاني (نوفمبر) 2021
تم إطلاق "androidx.car.app:app-*:1.2.0-alpha01
". يحتوي الإصدار 1.2.0-alpha01 على هذه الالتزامات.
جميع ميزات v1.2.0
الجديدة (واجهة برمجة التطبيقات 4 والإصدارات الأحدث) هي حاليًا في مرحلة تجريبية تستهدف إصدارات Android Auto وAndroid Automotive المستقبلية. يُرجى الرجوع إلى دليل التطوير للحصول على مزيد من التفاصيل.
تغييرات واجهة برمجة التطبيقات
- تم إجراء
AutomotiveCarInfo
تجريبيًا لواجهة برمجة التطبيقات. (Ia13e5) - تمت إضافة المستوى 4 من واجهة برمجة التطبيقات لمكتبة تطبيقات السيارة (I2a2e7)
- مستوى واجهة برمجة التطبيقات 4: تمت إضافة الدعم لإعداد
CarIcon
فيPane
(Ifcc12) - المستوى 4 من واجهة برمجة التطبيقات: تمت إضافة طريقة تسجيل الدخول باستخدام رمز الاستجابة السريعة (Ib623e)
- مستوى واجهة برمجة التطبيقات 4: تمت إضافة set/getFlags إلى
Action
(Ic03ab) - المستوى 4 من واجهة برمجة التطبيقات: تمت إضافة دعم العرض الشامل والتكبير في
PlaceListNavigationTemplate
وRoutePreviewNavigationTemplate
(I9d8a3)
إصلاح الأخطاء
- مستوى واجهة برمجة التطبيقات 4: إضافة آلية للسماح للتطبيقات بإرسال تحديثات الموقع الجغرافي إلى مضيف السيارة (I3bad3)
- حل المشكلة المتمثلة في عدم عثور منطق التحقق من المضيف على إذن webkit_RENDERER بشكل صحيح (I62618)
الإصدار 1.1.0
الإصدار 1.1.0
15 كانون الأول (ديسمبر) 2021
تم إطلاق "androidx.car.app:app-*:1.1.0
". يحتوي الإصدار 1.1.0 على هذه الالتزامات.
هذا إصدار من أجل تثبيت الحركة، وليس هناك أي تغييرات مقارنةً بالفترة v1.1.0-rc01
. يمكنك أيضًا الاطّلاع على ملاحظات إصدار v1.2.0-alpha02
للحصول على مزيد من التفاصيل عن الميزات الجديدة لمكتبة تطبيقات السيارة.
تغييرات مهمة منذ الإصدار 1.0.0
- المستوى 2 من واجهة برمجة التطبيقات:
SignInTemplate
وLongMessageTemplate
اللذين يمكن استخدامهما لعمليات تسجيل الدخول عندما تكون المركبة مركونة. - المستوى الثاني من واجهة برمجة التطبيقات: ربط دعم التفاعل ضمن
NavigationTemplate
- واجهة برمجة التطبيقات المستوى 2: إتاحة النصوص متعددة الطول للسماح للتطبيقات بتوفير إصدارات متعددة من السلسلة لعرضها حسب أحجام شاشة السيارة.
- المستوى 3 من واجهة برمجة التطبيقات:
CarHardwareManager
يمكن استخدامه للاستعلام عن بيانات معدّات المركبة، مثل الطراز والماركة ومستويات الوقود وأدوات الاستشعار الأخرى.
الإصدار 1.1.0-rc01
3 تشرين الثاني (نوفمبر) 2021
تم إطلاق "androidx.car.app:app-*:1.1.0-rc01
". يحتوي الإصدار 1.1.0-rc01 على هذه الالتزامات.
هذا إصدار من أجل تثبيت حركة البيانات، ولن نجري أي تغييرات في واجهة برمجة التطبيقات مقارنةً بالإصدار v1.1.0-beta01
. تمت إضافة ميزات تجريبية جديدة (المستوى 4 من واجهة برمجة التطبيقات) المُعَدّة لإصدارات Android Auto المستقبلية. يمكنك الاطّلاع على ملاحظات إصدار v1.2.0-alpha01
للحصول على مزيد من التفاصيل حول واجهات برمجة التطبيقات التجريبية.
الإصدار 1.1.0-beta01
1 أيلول (سبتمبر) 2021
تم إطلاق "androidx.car.app:app-*:1.1.0-beta01
". يحتوي الإصدار 1.1.0-beta01 على هذه الالتزامات.
تتوافق جميع ميزات v1.1.0
(واجهة برمجة التطبيقات 2 والإصدارات الأحدث) بشكل كامل مع الإصدار 6.7 من Android Auto والإصدارات الأحدث. يُرجى الرجوع إلى دليل التطوير للحصول على مزيد من التفاصيل.
تغييرات واجهة برمجة التطبيقات
- تمت إزالة
Manager
كواجهة عامة (Ie381b). - تمت إضافة إمكانية تعيين خلفية مخصصة للعلامة التجارية لطلب الإذن (I74b76).
- تمت إضافة
ScreenManager.getStackSize
(I0b16a). - تمت إزالة الدالة الإنشائية
ScreenController
التي تتضمّن محتوى فاضحًا يستخدمTestCarContext
(Iefebc).
إصلاح الأخطاء
- تمت إضافة التحقق من مستوى واجهة برمجة التطبيقات عند إنشاء
CarHardwareManager
(I48f9b) - تمت إضافة عمليات تحقّق من الاستخدام غير الصالح لـ
CarSpan
على واجهة برمجة التطبيقات (I65ae6). - تم إصلاح المشكلة المتمثلة في وضع علامة "مكتمل" على
Screen
أثناء إنشائه، كان يؤدي إلى إبقاء الحزمة في حالة تعطُّل (I81b13). - حلّ مشكلة تسجيل
CarNotificationManager.notify
لخطأ في نظام التشغيل Automotive إذا كانت هناك إجراءات تتضمّن رموزًا فيCarAppExtender
(I3633d) - تمت إضافة طريقة تأكيد الاتصال للتطبيق والمضيف لإنشاء إصدار من واجهة برمجة التطبيقات (I7d6f8).
الإصدار 1.1.0-alpha02
21 تموز (يوليو) 2021
تم إطلاق "androidx.car.app:app-*:1.1.0-alpha02
". يحتوي الإصدار 1.1.0-alpha02 على هذه الالتزامات.
الميزات الجديدة
- المستوى 3 من واجهة برمجة التطبيقات: تمت إضافة
CarHardwareManager
يمكن استخدامه للاستعلام عن بيانات معدّات المركبة، مثل الطراز والطراز ومستويات الوقود وأدوات الاستشعار الأخرى. في الوقت الحالي، لا تتوفّر هذه الميزة إلا في الإصدار 6.7 من Android Auto أو الإصدارات الأحدث في قناة الاختبار المفتوح. يتطلب اختبار ذلك في بيئة سطح المكتب إصدارًا جديدًا منDesktop Head Unit
والذي سيتم إصداره بشكل منفصل. تابع صفحة اختبار تطبيقات Android للسيارات للحصول على تفاصيل حول موعد توفُّر الإصدار الجديد. - اتبع دليل التطوير ومرجع المكتبة للحصول على تفاصيل إضافية وإرشادات تصميم حول كيفية استخدام هذه الميزات في مضيفات السيارات المتوافقة مع المستوى 3 لواجهة برمجة التطبيقات.
تغييرات واجهة برمجة التطبيقات
- تم دمج طريقتَي مراحل نشاط
SessionController
وScreenController
في طريقة واحدةmoveToState
واحدة (I1ed00) - تمّت إضافة
CarContext#getHostInfo()
(I8977e). - تمت إزالة الحقول التي تم إيقافها نهائيًا. (I67168)
- تم تعديل
SessionController
وScreenController
لعرض المنشئين مباشرةً (Iabf22). - تمت إزالة
PinSignInMethod.Builder
وProviderSignInMethod.Builder
(I9f0cb) - تمت إضافة "setCarAppResult()" لتفعيل استخدام التطبيقات النموذجية "للنتيجة" في AAOS (I37741)
- واجهات
CarHardware
تتضمّن تعليقات توضيحية باستخدام@MainThread
. (Ib2f85) - تمت إعادة تسمية
OnCarDataListener
إلىOnCarDataAvailableListener
(I518ca) - تم تعديل
CarInfo
وSpeed
وMileage
من أسماء الطرق وJavaScript. (I86672) - تمت إعادة تسمية
Toll
إلىTollCard
. (I3e7c8) - تمت إزالة ميزة
PinSignInMethod.getPin
المتوقفة نهائيًا والتي تم استبدالها بـPinSignInMethod.getPinCode
(I996ce) - تمت إزالة
OnInputCompletedListener
(تم استبداله بـInputCallback
). (Ib5be1) - تم تغيير
PinSignInMethod
ليصبحCharSequence
بدلاً منString
(I275d5).
إصلاح الأخطاء
- إصلاحات Javadoc لأجهزة السيارة. (I2abbc)
المساهمة الخارجية
المشاكل المعروفة
- في
SignInTemplate
، قد يؤدي استخدامInputSignInMethod
إلىNullPointerException
في مضيف السيارة. وستتم معالجة ذلك في الإصدار التالي من المكتبة. لحلّ هذه المشكلة، يُرجى تضمين هذا السطر في إعدادات Proguard على تطبيقك:-keep class androidx.car.app.model.signin.InputSignInMethod { *; }
الإصدار 1.1.0-alpha01
16 حزيران (يونيو) 2021
تم إصدار androidx.car.app:app:1.1.0-alpha01
وandroidx.car.app:app-automotive:1.1.0-alpha01
وandroidx.car.app:app-testing:1.1.0-alpha01
. يحتوي الإصدار 1.1.0-alpha01 على هذه الالتزامات.
الميزات الجديدة
- المستوى 2 من واجهة برمجة التطبيقات: الجديدان
SignInTemplate
وLongMessageTemplate
اللذان يمكن استخدامهما لعمليات تسجيل الدخول عندما تكون المركبة مركونة. - واجهة برمجة التطبيقات المستوى 2: دعم جديد للتفاعل مع الخرائط ضمن
NavigationTemplate
- واجهة برمجة التطبيقات المستوى 2: إتاحة جديدة للنصوص متعددة الطول للسماح للتطبيقات بتوفير إصدارات متعددة من السلسلة لعرضها حسب أحجام شاشة السيارة.
- اتبع دليل التطوير ومكتبة JavaDoc التابعة للمكتبة للحصول على تفاصيل إضافية وإرشادات تصميم حول كيفية استخدام هذه الميزات في مضيفات السيارات المتوافقة مع المستوى 2 لواجهة برمجة التطبيقات.
تغييرات واجهة برمجة التطبيقات
- تم ضبط جميع طُرق الواجهة في
*Callback
على الوضع التلقائي وتمت إعادة تسميتها إلىOnRequestPermissionsCallback
->OnRequestPermissionsListener
(Ib3ec9) - تم تعديل
androidx.car.app.hardware
فئات لإزالة منصات الإنشاء وفئات المعلَمات غير الضرورية. (I67beb) - تمت إضافة
androidx.car.app.hardware
فئة للوصول إلى بيانات محدّدة للسيارة، مثل الوقود والبطارية والسرعة. (Iff3c9) - تمت إضافة دعم
ActionStrip
علىMessageTemplate
(Ida657) - تمّت إضافة
setLoading
إلىMessageTemplate
. (I2a4b5) - تمت إعادة تسمية
ConnectionToCar
إلىCarConnection
(Ife9bd) - تم تغيير
NavigationTemplate
لعرض رسالةPanModeDelegate
صريحة (I13877) - تم تعديل ترتيب المعلَمات لـ
CarContext.requestPermissions
(Ib890a). - تم تعديل مفتاح البيانات الوصفية لتحديد الحد الأدنى لمستوى واجهة برمجة تطبيقات السيارة إلى
androidx.car.api.minCarApiLevel
(Ib0d41). - تم إنشاء واجهة برمجة تطبيقات تسمح بمراقبة حالة اتصال السيارة (Ifc935).
- تمت إضافة إمكانية ضبط مفتاح تبديل لجهاز
Action
وإضافة وضع العرض الشاملAction
(Ica6af). - تم إنشاء
CarNotificationManager
لإتاحة إرسال الإشعارات في السيارة (I10d7a). - تمت إضافة
ConstraintManager
لتوفير حدود القوائم من المضيف (I8690e). - تمت إضافة وضع العرض الشامل وواجهة برمجة التطبيقات لشريط الإجراءات على الخريطة في
NavigationTemplate
(I77aa6). - تمت إضافة واجهة برمجة تطبيقات العرض الشامل والتكبير/التصغير في
SurfaceCallback
لتطبيقات التنقّل (Id5e9d). - تم تحديث
CarAppApiLevel
إلى 2 (Ic1540). - تمت إضافة إمكانية طلب الأذونات من
CarAppService
(I5421e). - تمت إضافة تعليق
RequiresCarApi(2)
التوضيحي إلى واجهة برمجة التطبيقات المتعددة النصوص (Iacb62). - تم السماح بصيغ متعددة للنص في عنوان نموذج نصف القائمة (Ib8df7).
- تمت إضافة
LongMessageTemplate
جديد (يتطلب المستوى 2 من واجهة برمجة التطبيقات للسيارة) (Ic5cee)
إصلاح الأخطاء
- تم تعديل متطلبات حجم الصورة لمراعاة شاشات السيارات الأكبر حجمًا (I116dc).
- غير مسموح بإضافة أكثر من إجراءين في نصوص النماذج (I32157)
- تم التأكّد من إنشاء عمليات إنشاء
PendingIntent
بالكامل في علامات مجموعة مكتبة تطبيقات السيارة. (If84fe، b/186394900) - تم تعديل javadoc للسماح بتغيير نص
Row
كعمليات إعادة تحميل (If3f9c) - أصبحت
androidx.activity:activity:1.2.0
الآن تبعية لواجهة برمجة التطبيقات (Id1cb9) - تم تصنيع
SignInTemplate
وLongMessageTemplate
لطلب تنفيذ إجراءات "الركن فقط" في الجسم وتعديل المستندات للإشارة إلى أنه سيتم عرضهما فقط عندما تكون السيارة مركونة (Iddaa9) - تم إصلاح استثناء يحدث عند فرقعة
Screen
أثناء البدء (Ifcf40, b/184664896) - لون النص المخصص المسموح به في
ForegroundCarColorSpan
(I69e59) - تم إصلاح المشكلة التي تتم فيها ملاحظة
ON_DESTROY
علىSession
بعدON_DESTROY
لـScreen
(I52e01، b/183696617). - يُسمح بتعديل مستند javadoc عند ضبط الوقت المتبقي لـ
TravelEstimate
على وقت غير معروف. (I99610، b/183632456) - تم تحديث
Action
بحيث يتوافق معForegroundColorSpan
في العنوان وأي لون خلفية مخصص (I578e4) - لا يتم تنفيذ
NavigationManagerCallback#onStopNavigation
في حال محو معاودة الاتصال قبل تنفيذ أداة التنفيذ (I7fc5e، b/181143772). - تم إصلاح المشكلة التي تتطلب أن يعتمد التطبيق صراحةً على lifecycle-common-java8 (I8b8c8).
المشاكل المعروفة
- وفي
SignInTemplate
، تعرض لوحة المفاتيح على الشاشة رمز "بحث" بدلاً من رمز "Enter" عندما يريد المستخدم تأكيد الإدخال. كحل بديل، يمكن للمستخدمين الوصول إلى لوحة مفاتيح الهاتف التي يتم تنشيطها عندما يكون حقل الإدخال محل التركيز. - في الإصدار 6.5 من Android Auto، قد يتم استدعاء استدعاءات العرض الشامل والتكبير/التصغير في
SurfaceCallback
بشكل غير صحيح لبعض إيماءات اللمس.
الإصدار 1.0.0 من اختبار تطبيق السيارة
الإصدار 1.0.0-alpha01
24 آذار (مارس) 2021
تم إطلاق "androidx.car.app:app-testing:1.0.0-alpha01
". يحتوي الإصدار 1.0.0-alpha01 على هذه الالتزامات.
وهذا هو أول إصدار من Jetpack لمكتبة اختبارات مغلقة سابقًا. يمكنك الرجوع إلى النماذج المتعلقة بكيفية استخدام هذه المكتبة في اختباراتك.
الميزات الجديدة
- تمت إزالة وحدات التحكم لفئات النماذج. أصبحت أدوات الحصول على النماذج الآن جزءًا من سطح واجهة برمجة التطبيقات العامة الذي يسمح بالتحقق من صحة القيم التي تم تعيينها في أدوات الإنشاء.
- تم استبدال
CarAppServiceController
السابقة بالنظام الجديدSessionController
لأغراض الاختبار ذي الصلة بمدة صلاحية الاتصال بدرجات الحرارة الساخنة.
الإصدار 1.0.0
الإصدار 1.0.0
21 نيسان (أبريل) 2021
تم إطلاق "androidx.car.app:app:1.0.0
". يحتوي الإصدار 1.0.0 على هذه الالتزامات.
الميزات الرئيسية للإصدار 1.0.0
- في أوائل نيسان (أبريل)، أعلنّا أنه يمكن البدء في النشر على قناة الإنتاج باستخدام
androidx.car.app:app:1.0.0-rc01
. الإصدار 1.0.0 من Car App Library (مكتبة تطبيقات السيارة) ثابت الآن ومتوافق بالكامل مع الإصدار 6.1 من Android Auto والإصدارات الأحدث. - اتبع دليل التطوير للحصول على تفاصيل حول كيفية إنشاء تطبيقات للتنقل ومواقف السيارات والشحن لـ Android Auto باستخدام المكتبة.
إصلاح الأخطاء
- إصلاح الاستثناء الذي يحدث عند فرقعة
Screen
أثناء البدء (70aae1، b/184664896) - تم إصلاح المشكلة التي تتم فيها ملاحظة
ON_DESTROY
علىSession
بعدON_DESTROY
لـScreen
(0ceecb، b/183696617)
الإصدار 1.0.0-rc01
24 آذار (مارس) 2021
تم إطلاق "androidx.car.app:app:1.0.0-rc01
". يحتوي الإصدار 1.0.0-rc01 على هذه الالتزامات.
إصلاح الأخطاء
- تم إصلاح خطأ حالة السباق الذي كان يتم فيه استدعاء "
NavigationManagerCallback#onStopNavigation
" بعد محو معاودة الاتصال. يحدث ذلك في حال محو معاودة الاتصال قبل تشغيل تنفيذ معاودة الاتصال (I7fc5e، b/181143772). - تم إصلاح المشكلة التي تطلبت أن يعتمد التطبيق صراحةً على
lifecycle-common-java8
(I8b8c8) - تم حل مشكلة
NullPointerException
التي تم طرحها عندما يتلقى التطبيق مكالمةstopNavigation
عند إزالة التطبيق معاودة الاتصال (Ib8b89، b/181143772) - تحسينات على عدم إرسال الطلبات إلى التطبيق إذا كانت دورة حياته ليست على الأقل في حالة
CREATED
(I86965، b/179800224، b/177921120) - تم إصلاح المشكلة التي يتم فيها عرض واجهة برمجة تطبيقات صغيرة غير صالحة تم تحديدها في بيان التطبيق، ما يؤدي إلى حدوث خطأ ANR على المضيف. (Iffedd, b/174231592)
الإصدار 1.0.0-beta01
24 شباط (فبراير) 2021
تم إطلاق "androidx.car.app:app:1.0.0-beta01
". يحتوي الإصدار 1.0.0-beta01 على هذه الالتزامات.
وهذا هو أول إصدار من Jetpack للمكتبة التي تم إغلاقها سابقًا، وهو متوافق مع الإصدار 6.1 من Android Auto أو الإصدارات الأحدث. تابع دليل التطوير للحصول على تفاصيل حول كيفية تصميم تطبيقات السيارات باستخدام المكتبة.
الميزات الجديدة
- تم تقديم
GridTemplate
يمكن لتطبيقك استخدامها لعرض قائمة بعناصر واجهة المستخدم في تنسيق على شكل شبكة. - تم إدخال طريقة
CarAppService.createHostValidator
للتحقُّق من أن الاتصال بالمضيف من مصدر موثوق به (مثل Android Auto). - تمت إضافة واجهة برمجة تطبيقات
CarAppExtender.Builder.setColor
. (b/174231592)
إصلاح الأخطاء
- تم إصلاح المشكلة المتمثلة في استئناف عنوان
Screen
غير الصحيح عند عرض الشاشات المنبثقة بشكل تسلسلي. (b/177590791)