تطبيق سيارة

تصميم تطبيقات مُصمَّمة لأجهزة Android Auto ونظام التشغيل Android Automotive.
آخر تعديل الإصدار المستقر إصدار المرشح الإصدار التجريبي إصدار أولي
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 على هذه الالتزامات.

الميزات الجديدة

بالإضافة إلى الإمكانات المُضافة إلى الإصدار 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.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)