تطبيق السيارة

يمكنك إنشاء تطبيقات متوافقة مع Android Auto ونظام التشغيل Android Automotive.
التعديل الأخير الإصدار المستقر إصدار مرشح الإصدار التجريبي إصدار ألفا
17 نيسان (أبريل) 2024 1.2.0 1.4.0-rc02 - 1.7.0-alpha02

إعلان التبعيات

لإضافة تبعية إلى مكتبة تطبيقات السيارة، يجب عليك إضافة مستودع 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.7

الإصدار 1.7.0-alpha02

17 نيسان (أبريل) 2024

تم طرح "androidx.car.app:app-*:1.7.0-alpha02". يحتوي الإصدار 1.7.0-alpha02 على هذه الالتزامات.

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

  • تمت إضافة علامات تم إيقافها نهائيًا للنماذج المستندة إلى الخرائط والتي سيعمل نموذج MapWithContent عليها من الآن فصاعدًا.

تغييرات واجهة برمجة التطبيقات

  • إيقاف MapTemplate وRoutePreviewNavigationTemplate وPlaceListNavigationTemplate القديمة والتشجيع على استخدام MapWithContentTemplate الجديدة (Ib0a08)

الإصدار 1.7.0-alpha01

3 نيسان (أبريل) 2024

تم طرح "androidx.car.app:app-*:1.7.0-alpha01". لقد نقلنا مخطّط إصدارات المكتبة ليتطابق مع إصدار CarApi النشط. وهذا للحد من الالتباس بشأن مخطط التسمية بناءً على ملاحظات مطوّري البرامج. نتيجةً لذلك، سنتخطّى الإصدارات 1.5 / 1.6 التي سيتم نقلها مباشرةً إلى الإصدار 1.7 من الإصدار 1.7.0-alpha01 يحتوي على هذه الالتزامات.

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

  • ربط مع المحتوى: نموذج جديد باسم MapWithContent يتيح استخدام القائمة / الشبكة / اللوحة / الرسالة كمحتوى داخل الخريطة.
    • RoutePreview، PlaceListNavigation، تم إيقاف نماذج الخرائط نهائيًا الآن.
    • تم تعديل نماذج التطبيقات لعرض وظائف النماذج التي تم إيقافها نهائيًا باستخدام MapWithContent.
  • عنصر المحادثة: واجهات برمجة تطبيقات جديدة لعرض المحادثات (الرسائل الفورية والرسائل القصيرة) وقراءات "مساعد Google" في السيارة.
  • أبعاد المركبة: واجهة برمجة تطبيقات جديدة تتيح استرداد مقاييس المركبات (بيانات نظام التشغيل Android Automotive في الوقت الحالي)

تغييرات واجهة برمجة التطبيقات

  • وضع علامة على نوع صورة الصف الصغير الإضافي على أنّها تجريبية (I5184b)
  • تمت إضافة واجهة برمجة تطبيقات CarInfo#fetchExteriorDimensions التي تتيح الوصول إلى معلومات الأبعاد الخارجية للمركبة، مثل الارتفاع والعرض وما إلى ذلك (Ia40c5).
  • تمت إزالة علامة ExperimentalAPI من MapWithContentTemplate (I66db8).
  • عدِّل معلَمة GridItem#setTitle لتصبح قيمة فارغة. (I3d610)
  • لا تتطلّب واجهة برمجة التطبيقات GetHeader API الإصدار 7 من واجهة برمجة التطبيقات لأنّها متوافقة مع الأنظمة القديمة (I8c812).
  • إضافة دعم لـ Header في ListTemplate، إيقاف headerAction وheaderTitle وactionStrip (I7ae01)
  • إيقاف title وheaderAction وactionStrip في GridTemplate وإضافة دعم إلى Header (I41a9c)
  • إزالة متطلبات المستوى 7 لواجهات برمجة التطبيقات التجريبية: الشارة وGridTemplate حجم العنصر والمقاسات في شكل الصورة وGridItem طريقة للحصول على الشارة أو إعدادها. (Id71eb)
  • إيقاف title وheaderAction وactionStrip في PaneTemplate وإضافة دعم Header جديد (I23154)
  • تم تغيير القياس عن بُعد في Media Center من BroadcastReceiver إلى "تصفّح إجراء مخصّص". (I4185f)
  • تمت إضافة إمكانية استخدام سمات Header في MessageTemplate. تم إيقاف الدعم لـ ActionStrip وheaderAction وtitle. (Ie2de8)
  • تعديل مستوى الرؤية الثابت للتنبيه (Icf8a8)
  • إزالة السمة isLoading من النموذج الرئيسي (I651e6)
  • إضافة إضافات لإعلام تطبيقات الوسائط بمعلمات واجهة المستخدم الرئيسية (I85ca2)
  • إضافة ميزة إحصاءات مركز الوسائط إلى MediaExtensions (I7ce28)
  • تمت إضافة خيار للصور الصغيرة جدًا في الصفوف. (I72c03)

إصلاح الأخطاء

  • يُرجى تعديل javadoc على ConversationItem للإشارة إلى أنّه يجب ترتيب الرسائل بالترتيب من الأقدم إلى الأحدث. (I77a2a)
  • تعديل منطق اقتطاع ListTemplate لإزالة الرسائل الأقدم من ConversationItem (Ie0a61)

الإصدار 1.4

الإصدار 1.4.0-rc02

13 كانون الأول (ديسمبر) 2023

تم طرح "androidx.car.app:app-*:1.4.0-rc02". يحتوي الإصدار 1.4.0-rc02 على هذه الالتزامات.. إصلاحات طفيفة فقط

إصلاح الأخطاء

  • تحديث javadoc على ConversationItem للإشارة إلى أنه يجب ترتيب الرسائل بالترتيب من الأقدم إلى الأحدث (I77a2a)
  • تعديل منطق اقتطاع ListTemplate لإزالة الرسائل الأقدم من ConversationItem (Ie0a61)

الإصدار 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-الإصدار التجريبي 1.4 الإصدار التجريبي Compesdk34 الذي لا يزال بحالة المطوّر. سيحلّ الإصدار 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 على هذه الالتزامات.

  • يهدف إصدار "ألفا 02" إلى الاستعداد للإصدار القادم من "بيتا01".

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

  • عرض الخرائط من خلال إتاحة مجموعة الأدوات لتطبيقات التنقّل
  • تمت إضافة علامات تبويب للتطبيقات لتحسين تجربة التنسيق
  • تمت إضافة خيارات عرض نموذج القائمة / الشبكة.
  • تمت إضافة فئات جديدة للطقس والتواصل.
  • نقل واجهات برمجة تطبيقات متعددة إلى إصدار CarApi 7 التالي

تغييرات واجهة برمجة التطبيقات

  • إضافة حقول الوسائط المتعددة إلى CarMessage (I5aaf6)
  • إضافة إجراءات مخصّصة إلى "ConversationItem" في مكتبة تطبيقات السيارة (Ie5ed6)
  • يمكنك إدراج إضافات للإشارة إلى تشغيل عنصر الوسائط بتنسيق صوتي غامر وعرض شعار تنسيق المحتوى الخاص به (Icb5bb).
  • إضافة نوع إجراء جديد، واجهة برمجة التطبيقات ActionsConstraints لإتاحة زر الإنشاء (I31661)
  • تم إنشاء set/getTemplate باسم set/get ContentTemplate (Ica036).
  • ستكون مَعلمة النموذج الآن @NonNull. تم تعديل مستندات واجهة برمجة التطبيقات MapWithContentTemplate (I0f8ed).
  • إزالة علامة @ExperimentalCarApi للإجراءات في ListTemplate لإطلاقها في CAL 1.4 (I2cfcb)
  • إزالة علامة @ExperimentalCarApi لـ TabTemplate (Ifcb82)
  • إزالة تعليقات @ExperimentalCarApi التوضيحية من الإجراءات الثانوية والتزيينات في الصف (I8487e)
  • إضافة معرّف محتوى علامة التبويب النشطة إلى TabTemplate وإيقاف الحالة النشطة في علامات التبويب (I96932)
  • إضافة السمة ItemImageShape إلى GridTemplate (Ibf431)
  • أضِف السمة ItemSize إلى GridTemplate التي تتحكّم في حجم عناصر الشبكة وفقًا لمجموعات البيانات الصغيرة والمتوسطة والكبيرة النسبية. (Icdb3b)
  • افتح واجهة برمجة التطبيقات للوصول للمطوّرين للحصول على نسخة من حزمة الشاشة الحالية. (I48107)
  • إضافة فئة لتطبيقات الطقس إلى مكتبة تطبيقات السيارة (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 من Car App Library، تمت إضافة الميزات التالية كجزء من الإصدار التجريبي 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 والإصدارات الأحدث.

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

  • المستوى 5 من واجهة برمجة التطبيقات: ميزة MapTemplate الجديدة التي يمكن أن تستخدمها تطبيقات التنقّل لعرض لوحة أو محتوى بجانب خريطة (If5826 وIf44b8)
  • المستوى 5 من واجهة برمجة التطبيقات: واجهة برمجة تطبيقات جديدة في CarAudioRecord تسمح بتسجيل إدخال الصوت عبر ميكروفون المركبة المضيف (I5e71a)
  • المستوى 5 من واجهة برمجة التطبيقات: واجهة برمجة تطبيقات جديدة في SuggestionManager للسماح للتطبيقات بتقديم الاقتراحات إلى المضيف (I5c103)
  • المستوى 5 من واجهة برمجة التطبيقات: واجهة برمجة تطبيقات Alert جديدة يتم عرضها في إشعارات السياق على NavigationTemplate (I163a7 وI5ad70)
  • المستوى 5 من واجهة برمجة التطبيقات: مكوّنات 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 إلى الإصدار التجريبي 01 من المكتبة) (Id8a09)
  • المستوى 5 من واجهة برمجة التطبيقات: يمكنك تفضيل مكوّن Header الجديد من خلال setHeader على PlaceListNavigationTemplate.Builder وRoutePreviewNavigationTemplate.Builder، مع الإيقاف النهائي لطريقتَي setTitle وsetHeaderAction الحاليتَين (I30e6a)
  • المستوى 5 من واجهة برمجة التطبيقات: طريقة setOnContentRefreshListner جديدة على PlaceListMapTemplate.Builder وPlaceListNavigationTemplate.Builder للاستخدام مع عمليات تنفيذ واجهة OnContentRefreshListner الجديدة.
  • المستوى 5 من واجهة برمجة التطبيقات: setTripText وsetTripIcon جديدان في TravelEstimate.Builder لتخصيص بطاقة تقدير السفر (Idcc6d وIc620d)
  • إضافة دعم لـ CarIconSpan في عنوان PaneTemplate (Ia1ee0)
  • إضافة دعم CarIconSpan في عنوان ونص Row (Ic1e3c)
  • يمكن الآن أن تتضمّن خرائط ActionStrip ما يصل إلى أربعة إجراءات (If3522).
  • تحديث المستوى 5 (I26b8e) لواجهة برمجة تطبيقات Car App API
  • العناوين/العناوين اختيارية الآن لتطبيقات 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

9 تشرين الثاني (نوفمبر) 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 للإشارة إلى أنّه لم يتم تنفيذها لنظام التشغيل Android Automotive (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)
  • تم تحديث CarAppActivity javadoc ليتضمن متطلبات وضع تشغيل فئة عمرية واحدة (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 في Panes، و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)
  • حل مشكلة عدم عثور منطق التحقق من المضيف على إذن TEMPLATE_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 اللذان يمكن استخدامهما لعمليات تسجيل الدخول عندما تكون المركبة مركونة.
  • المستوى 2 من واجهة برمجة التطبيقات: إتاحة إمكانية التفاعل ضمن 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 لخطأ في نظام التشغيل AutomotiveOS في حال توفُّر إجراءات تتضمّن رموزًا في CarAppExtender (I3633d)
  • تمت إضافة طريقة تأكيد الاتصال للتطبيق والمضيف لإنشاء إصدار واجهة برمجة التطبيقات (I7d6f8).

الإصدار 1.1.0-alpha02

21 تموز (يوليو) 2021

تم طرح "androidx.car.app:app-*:1.1.0-alpha02". يحتوي الإصدار 1.1.0-alpha02 على هذه الالتزامات.

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

  • المستوى 3 من واجهة برمجة التطبيقات: تمت إضافة سمة CarHardwareManagerيمكن استخدامها للاستعلام عن بيانات معدّات المركبة، مثل الطراز والطراز ومستويات الوقود وأدوات الاستشعار الأخرى. لا تتوفّر هذه الميزة حاليًا إلا لنظام Android Auto 6.7 والإصدارات الأحدث في قناة الاختبار المفتوح. يتطلب اختبار ذلك في بيئة سطح المكتب إصدارًا جديدًا من 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 من أسماء الطرق وjavadoc. (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 (I52e01، b/183696617)Screen
  • يُسمح بتطبيق 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 من مكتبة تطبيقات السيارة ثابتًا الآن ومتوافقًا بالكامل مع الإصدار 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)