ملاحظات إصدار حزمة تطوير البرامج (SDK) للمستهلك لنظام التشغيل Android

يحتوي هذا القسم على ملاحظات الإصدار لحزمة Consumer SDK لنظام التشغيل Android.

الإصدار 2.3.0 (2 أغسطس 2024)

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

2.2.0 (7 أيار (مايو) 2024)

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

  • تمت إضافة واجهة برمجة تطبيقات لدعم دمج Jetpack Compose. هذه ميزة تجريبية. للاطّلاع على تفاصيل حول الدمج مع Jetpack Compose، يُرجى التواصل مع ممثّلك.

2.1.0 (17 يناير 2024)

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

  • إصلاح الأعطال التي تحدث عند بدء حزمة تطوير البرامج (SDK) أكثر من مرة على مدار رحلة نشاط التطبيق

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

  • يقدّم هذا القسم طريقة لاسترداد مثيل GoogleMap الذي أنشأته حزمة SDK (ConsumerGoogleMap.getGoogleMap()).
  • تعرِض واجهة برمجة التطبيقات لاسترداد نُسخ Marker التي أنشأتها حزمة تطوير البرامج (SDK) لتمثيل المركبة (ConsumerController.getConsumerMarker()).
  • تقديم واجهة برمجة تطبيقات لتلقّي آخر المعلومات المتوقّعة للعميل بشأن الوقت والمسافة أثناء ميزة "مشاركة الرحلة" (ProjectedRouteEta)

1.99.2 (3 تشرين الثاني/نوفمبر 2023)

  • يعمل هذا الإجراء على إصلاح الأعطال التي تحدث عند إعداد حزمة تطوير البرامج (SDK) من عملية بعيدة، ومنفصلة عن التطبيق.

  • يعمل هذا الإجراء على إصلاح الأعطال التي تحدث أثناء تنفيذ الصورة المتحركة للكاميرا ولا تكون هناك مساحة عمودية أو أفقية كافية للمساحة المتروكة. ولا يحدث ذلك إلا في أحدث أداة لعرض الخرائط.

  • إصلاح خطأ يؤدي إلى اقتطاع القسم الأول من رحلة متتالية عندما يمر القسم الثاني من الرحلة على الطريق نفسها

المشاكل

  • تطرح الدالة ConsumerApi.initialize() استثناءً إذا تم استدعاؤها عند توفّر مثيل لواجهة برمجة التطبيقات. للتغلب على هذه المشكلة، عليك أولاً استدعاء ConsumerApi.getInstance() وتقييم Task الذي تم عرضه لتحديد ما إذا كان هناك مثيل من واجهة برمجة التطبيقات.

2.0.0 (15 أيلول/سبتمبر 2023)

إشعار: قد لا تتوفر تغييرات

  • تم تعديل الحد الأدنى لمستوى واجهة برمجة التطبيقات من 21 إلى 23.

  • تعديل متطلبات إصدار حزمة تطوير البرامج (SDK) لتطبيق "خرائط Google" من الإصدار 17.0.0 إلى الإصدار 18.1.0

  • تم تعديل الحد الأدنى لمتطلبات إصدار المكتبة العادية في Kotlin من الإصدار 1.6.10 إلى الإصدار 1.9.0.

  • تحديث إصدارات متطلّبات "خدمات Google Play"

    • تم تحديث الحد الأدنى المطلوب لإصدار مكتبة قاعدة "خدمات Play" من الإصدار 18.0.1 إلى الإصدار 18.2.0

    • تم تحديث الحد الأدنى لمتطلبات إصدار مكتبة الطابق السفلي من 18.0.0 إلى v18.2.0

    • تم تحديث الحد الأدنى لمتطلبات إصدار مكتبة موقع خدمات Play من 17.0.0 إلى v21.0.1

    • تم تعديل الحد الأدنى لمتطلبات إصدار مكتبة play-services-tasks من v18.0.1 إلى v18.0.2

  • إضافة مكتبة androidx.room:room-runtime مع ضبط الحد الأدنى لمتطلبات الإصدار على الإصدار 2.5.2

  • تعديل إصدارات البرامج التابعة التالية

    • تم تعديل الحد الأدنى لإصدار مكتبة android-maps-utils من الإصدار 0.4.2 إلى الإصدار 3.5.2

    • تم تعديل الحد الأدنى لمتطلبات الإصدار com.google.android.datatransport:transport-backend-cct من الإصدار 3.0.0 إلى الإصدار 3.1.9

    • تم تعديل الحد الأدنى لمتطلبات الإصدار com.google.android.datatransport:transport-runtime من الإصدار 3.0.1 إلى الإصدار 3.1.9

    • تم تعديل الحد الأدنى لمتطلبات إصدار androidx.lifecycle:lifecycle-extensions من الإصدار 2.0.0 إلى الإصدار 2.2.0

    • تم تحديث الحد الأدنى لمتطلبات الإصدار androidx.lifecycle:lifecycle-common-java8 من v2.0.0 إلى v2.6.1

    • تم تعديل الحد الأدنى لمتطلبات إصدار androidx.appcompat:appcompat من الإصدار 1.0.0 إلى الإصدار 1.6.1

    • تم تحديث الحد الأدنى لمتطلبات إصدار androidx.segment:أجزاء من 1.0.0 إلى v1.6.1

  • تتم إزالة واجهات برمجة التطبيقات التالية التي تم إيقافها نهائيًا: ConsumerTrip وConsumerTripCallback وConsumerTripManager وConsumerTripOptions. وتم استبدالها بالرموز TripModel وTripModelCallback وTripModelManager وTripModelOptions.

  • يجب أن تتضمّن التطبيقات التي تستخدم حزمة تطوير البرامج (SDK) الخاصة بالمستهلكين targetSdkVersion من واجهة برمجة التطبيقات 31 أو أعلى أو compileSdkVersion من واجهة برمجة التطبيقات 33 أو أكبر.

  • يجب أن تفعِّل الآن التطبيقات التي تستخدم حزمة تطوير البرامج (SDK) الخاصة بالمستهلك دعم مكتبة Java 8. يُرجى الاطّلاع على الرابط التالي للحصول على تعليمات بشأن التحديث: https://developer.android.com/studio/write/java8-support.

  • يجب نقل التطبيقات التي تستخدم Proguard أو Dexguard إلى R8. يُرجى الاطّلاع على https://developer.android.com/build/shrink-code للحصول على مزيد من المعلومات.

  • يجب تفعيل ميزة إزالة السكر من التطبيقات التي تستخدم حزمة Consumer SDK. للاطّلاع على التعليمات، يمكنك الانتقال إلى https://developer.android.com/studio/write/java8-support#library-desugaring.

  • تنشئ الطريقة ConsumerApi.initialize() الآن استثناءً إذا تم استدعاؤها عند وجود مثيل واجهة برمجة تطبيقات تم إنشاؤه مسبقًا. يجب استخدام Task المعروضة من خلال ConsumerApi.getInstance() لتحديد ما إذا كانت هناك مثيل Task تم إنشاؤه مسبقًا.

إشعار: إيقاف واجهة برمجة التطبيقات نهائيًا

  • تؤدي هذه السياسة إلى إيقاف فئتَي التعليقات التوضيحية Trip.TripStatus وTrip.TripType نهائيًا، وإضافة فئتَي التعليقات التوضيحية TripInfo.TripStatus وTripInfo.TripType بدلاً منهما.

    • وفي إطار هذا التغيير، تم إيقاف TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status) نهائيًا وتمت إضافة TripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status) ليحل محله.

    • وكجزء من هذا التغيير، تم إيقاف TripInfo#getTripStatus() نهائيًا، وتمت إضافة TripInfo#getCurrentTripStatus() ليحلّ محلّه.

    • وكجزء من هذا التغيير، تم إيقاف TripInfo#getTripType() نهائيًا، وتمت إضافة TripInfo#getCurrentTripType() ليحلّ محلّه.

  • إيقاف فئة Trip نهائيًا

تغييرات أخرى وإصلاحات للأخطاء

  • يتيح طلب أحدث عارض لحزمة تطوير البرامج (SDK) للخرائط. اطّلِع على أداة عرض الخرائط الجديدة للحصول على التفاصيل.

  • توفّر هذه الميزة توافق حزمة تطوير البرامج (SDK) لتطبيق "خرائط Google" مع الإصدارات من 18.1.0(شاملة) إلى 19.0.0(حصرية).

  • إصلاح خطأ "انتهاء الموعد النهائي" في عمليات التواصل الداخلية بين حِزم تطوير البرامج (SDK) وخلفية Google

  • إصلاح مشكلة العرض على الشاشة الصغيرة ووضع "نافذة ضمن النافذة"

دليل نقل البيانات

1.99.1 (31 آب/أغسطس 2023)

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

  • إصلاح عطل يحدث عند إتلاف نشاط أو جزء مضيف حِزم تطوير البرامج (SDK)

  • لإصلاح الأعطال التي تحدث عندما تكون أبعاد MapView تساوي 0 (إما الارتفاع أو العرض).

  • إصلاح مشكلة الأعطال التي تحدث عند عرض الموقع الجغرافي للمركبة على مسار ملف خطوط الالتفاف

التحسينات

  • يمنع هذا الإجراء حزمة تطوير البرامج (SDK) من تعطُّل عند تثبيت التطبيق المضيف من مصدر غير معروف وعدم توفُّر الموارد المرئية التلقائية.

1.99.0 (22 حزيران/يونيو 2023)

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

  • يعمل على حل مشكلة العرض على الشاشة ذات الحجم الصغير وفي وضع "نافذة ضمن النافذة".

  • إصلاح وميض المركبات أثناء مشاركة الرحلة

1.2.1 (7 حزيران/يونيو 2023)

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

  • إصلاح خطأ يتسبب في وميض المركبة أثناء مشاركة الرحلة.

1.2.0 (21 تشرين الثاني/نوفمبر 2022)

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

  • إصلاح الخلل الذي أدّى إلى الإبلاغ عن زيارات فارغة في callback onTripActiveRouteTrafficUpdated

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

  • تتوفّر الآن "الخطوط المتعددة الواعية بحركة المرور" بشكلٍ عام.

1.1.2 (27 تشرين الأول/أكتوبر 2022)

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

  • معالجة الخلل الذي يؤدي إلى اختفاء المضلع للمسار بعد بدء JourneySharingSession أكثر من مرة لTripModel

إشعار: إيقاف نهائي لدعم نظام التشغيل Android 5 (25 تموز/يوليو 2022)

بالنسبة إلى الإصدار 1.1.1 من حزمة SDK، سنوفّر عامًا إضافيًا من الدعم للتطبيقات التي تعمل على نظام التشغيل Android 5، لكل من المستوى 21 و22 من واجهة برمجة التطبيقات.

ويعني ذلك أنه:

  • ستتوافق حزمة تطوير البرامج (SDK) الخاصة بالمستهلك التي تعمل على تطبيقات Android مع إصدار Android 5 على الأقل (المستوى 21 من واجهة برمجة التطبيقات) حتى 30 حزيران (يونيو) 2023.

  • بعد 30 حزيران (يونيو) 2023، لن نتيح سوى المستوى 23 من واجهة برمجة تطبيقات Android والإصدارات الأحدث. بمعنى آخر، سنتوقف عن إتاحة المستويَين 21 و22 من واجهة برمجة تطبيقات Android في جميع إصدارات حزمة تطوير البرامج (SDK) بعد هذا التاريخ. وهذا يعني أنّه لن يتم إصلاح الأخطاء المتعلّقة بنظام التشغيل Android 21 أو 22 في أي إصدار من حزمة SDK (بما في ذلك الإصدار 4.x)، ولا نضمن أن تعمل حِزم SDK بشكل صحيح.

الإصدار 1.1.1 (25 تموز/يوليو 2022)

تغيير التبعية

  • يتم الرجوع إلى المستوى 21 من واجهة برمجة تطبيقات Android كحد أدنى لإصدار واجهة برمجة التطبيقات المتوافق.

الإصدار 1.1.0 (28 نيسان/أبريل 2022)

  • التحسينات الداخلية.

الإصدار 1.0.19 (17 آذار/مارس 2022)

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

  • تم إصلاح تسرب ذاكرة في فئة ConsumerApi.

الإصدار 1.0.14 (30 تشرين الثاني/نوفمبر 2021)

الحد الأدنى المتوافق مع واجهة برمجة تطبيقات Android هو 23 الآن.

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

  • التغييرات في صفوف ConsumerTrip وConsumerTripManager

    • تمّت إزالة بعض أسماء الطرق لجعل معناها أكثر وضوحًا ومواءمةً مع نظام التشغيل iOS.
  • التغييرات في ConsumerTripCallback وConsumerTrip وTripInfo

    • تم تغيير بعض أسماء الفئات لتشكيل التكافؤ مع iOS. تم تقديم TripModel وTirpModelManager وTripModelOptions لإيقاف ConsumerTrip وConsumerTripManager وConsumerTripOptions نهائيًا.

    • تم حذف بعض أسماء الطرق. تمت مراجعة تعليقات JavaDoc أو إضافتها إلى الطرق لنقل معانٍ أوضح.

    • تحسين معالجة الأخطاء

تخصيص التصميم

  • برامج تضمين الإصدار القديم

    • تم إيقاف MarkerStyleOptions وPolylineStyleOptions نهائيًا واستبدالهما MarkerOptions وPolylineOptions، اللذَين تمت مشاركتهما مع حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google".

مراقبة الأعطال

  • تمت إضافة ميزة رصد الأعطال وتسجيلها.

    • تم إجراء إضافة للسماح لك بإيقاف هذه الوظيفة. وقد تم ذلك في إطار جهود أكبر على مستوى الموقع الجغرافي لمراقبة الأعطال.

تغييرات في المصادقة

  • أزِل الطرق غير الضرورية من واجهات المصادقة.
    • تمت إزالة مَعلمة ServiceType.

الإصدار 0.9.28 (18 أيار (مايو) 2021)

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

  • تم تعديل جميع طرق ConsumerTripCallback لاستخدام TripInfo كمَعلمة .
  • تمت إضافة ConsumerTrip.isRefreshing()، التي تشير إلى ما إذا كان ConsumerTrip يتم تعديله بشكل نشط باستخدام معلومات الرحلات الجديدة من Fleet Engine.
  • تمت إضافة ConsumerTripCallback.onTripRemainingRouteDistanceUpdated().
  • تمت إضافة ConsumerTripCallback.onTripRemainingRouteUpdated().
  • استبدِل أنواع الإرجاع الحانة بـ Juva (ImmutableSet وImmutableList) بـ java.util فئة مكافئة.
  • التغييرات في اسم الحزمة:

    • com.google.android.libraries.ridesharing.common.AuthTokenContext -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenContext
    • com.google.android.libraries.ridesharing.common.AuthTokenFactory -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenFactory
    • com.google.android.libraries.ridesharing.common.FleetEngineServiceType -> com.google.android.libraries.ridesharing.consumer.auth.FleetEngineServiceType - com.google.android.libraries.ridesharing.common.model.Trip

                                  ->
                                                                  com.google.android.libraries.ridesharing.consumer.model.Trip
      
                                  -   com.google.android.libraries.ridesharing.common.model.Vehicle
      
                                                          ->
                                      com.google.android.libraries.ridesharing.consumer.model.Vehicle
      

تغييرات التنفيذ

  • تم إصلاح حالة سباق توقُّف حزمة تطوير البرامج (SDK) فيها نتيجة التفاعلات مع الخريطة قبل أن تصبح جاهزة.
  • لم تعُد حزمة SDK تحتوي على نسخة غير مشفّرة من io.grpc.
  • تم إصلاح خطأ متعلّق بظهور خطوط متعددة للمرور بشكل متقطع على أجهزة معيّنة. وستكون هناك نهايات دائرية لشرائح الزيارات.

الإصدار 0.9.15 (7 تشرين الأول/أكتوبر 2020)

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

  • يقدّم هذا الإصدار خطوط ملفتة للانتباه باستخدام الخطوط المتعددة. - تمت إضافة TripInfo.getActiveRouteTraffic() و TripInfo.getRemainingRouteTraffic().
    • تمت إضافة ConsumerTripCallback.onTripActiveRouteTrafficUpdated() و ConsumerTripCallback.onTripRemainingRouteTrafficUpdated() للإشارة إلى حالات تغيُّر عدد الزيارات.
    • تمت إضافة PolylineStyleOptions لتخصيص عدد الزيارات (setTrafficEnabled()، setTrafficColorNoData()، setTrafficColorNormal()، setTrafficColorSlow()، setTrafficColorTrafficJam()).
    • ظاهرة PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITION.
    • تمت إضافة TripWaypoint.getTrafficData().
    • تمت إضافة نوع البيانات TrafficData.
    • تمت إضافة "ConsumerController.hideAllSessions()". لم يعد ConsumerController.showSession() يقبل القيمة "فارغ" كوسيطة.

الإصدار 0.9.9 (15 تموز/يوليو 2020)

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

  • هذا تغيير كبير يؤدي إلى إنشاء بنية مفصَّلة مع علاقة أوضح بين طبقة البيانات فقط (على سبيل المثال، ConsumerTripManager) وطبقة واجهة المستخدم (مثل JourneySharingSession). للحصول على معلومات عن الانتقال إلى البنية الجديدة، يمكنك الاطّلاع على دليل نقل البيانات المفصّلة. - يتم الآن الحصول على عنصر ConsumerTrip من ConsumerTripManager.getTrip().
    • تمت إعادة تسمية "ConsumerTrip.unregisterCallback" إلى ConsumerTrip.unregisterTripCallback.
    • تمت إعادة تسمية ConsumerTrip.isCallbackRegistered إلى ConsumerTrip.isTripCallbackRegistered.
    • تمت إضافة ConsumerTrip.setConsumerTripOptions() و ConsumerTrip.getConsumerTripOptions().
    • تمت إزالة ConsumerTrip.setAutoRefreshInterval().
  • تمّت إزالة واجهات برمجة التطبيقات غير المخصّصة لمشاركة الرحلات.
    • تمت إزالة خريطة كثافة المركبات.
    • تمّت إزالة حالة معاينة الرحلة.
    • تمت إزالة حالة اختيار مكان الاستلام.
    • تمت إزالة حالة اختيار نقطة الاستلام.
    • تمت إزالة أنواع العلامات التالية: SELECTED_PICKUP_POINT وSUGGESTED_PICKUP_POINT وHIGHLIGHTED_PICKUP_POINT وSELECTED_DROPOFF_POINT.
  • تم تغيير OnConsumerMarkerClickCallback وConsumerMapReadyCallback من واجهات إلى فئات مجردة.
  • تمت إضافة ConsumerController.getCameraUpdate() وConsumerController.isAutoCameraEnabled() وConsumerController.enableAutoCamera().
  • تمت إزالة رمز التطبيق المصغّر المخصّص للإجراءات السريعة والأساليب المرتبطة به (ConsumerController.isMyLocationFabEnabled و ConsumerController.setMyLocationFabEnabled).

التغييرات في طريقة التنفيذ

  • إنّ ConsumerTripCallback، سواء كانت مسجَّلة باستخدام LifecycleOwner أو بدونها، لا يتم إلغاؤها تلقائيًا في TripStatus.COMPLETE أو TripStatus.CANCELED.
  • الكاميرا التلقائية مُفعَّلة الآن بشكل تلقائي ولا تتم إعادة تفعيلها أو إيقافها أبدًا. في السابق، كانت ميزة "الكاميرا التلقائية" تُعاد تفعيلها تلقائيًا على TripStatus.ARRIVED_AT_PICKUP وتُوقف نفسها عندما يتفاعل المستخدم مع الخريطة أثناء مشاركة الرحلة.
  • تم إجراء التحسينات التالية على الصور المتحركة للمركبات التي تتيح مشاركة الرحلات:
    • تتعامل الصورة المتحركة لمشاركة الرحلة الآن مع الموقف الذي قد تعود فيه المركبة بشكل شرعي على طول المسار الذي تم اجتيازه بالفعل.
    • ستعمل المركبة الآن على رسم خط مستقيم بدلاً من استقراء المسار بين النقاط عندما يتم تحديد أنه مناسب باستخدام الخوارزميات.
  • لم تعد أذونات FINE_LOCATION مطلوبة.

التغييرات الأخرى

  • تم تعديل إصدارات التبعيات التالية:
    • com.google.android.datatransport:transport-api:2.2.0
    • com.google.android.datatransport:transport-backend-cct:2.2.0
    • com.google.android.datatransport:transport-runtime:2.2.0

الإصدار 0.9.1 (23 آذار/مارس 2020)

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

  • تمت إضافة TripInfo.getVehicleId() وTripInfo.getNumberOfPassengers() TripInfo.getIntermediateDestinationIndex() TripInfo.getTripActiveRoute() وTripInfo.getTripRemainingRoute().
  • تمت إضافة فئة options المستخدَمة أثناء بدء ConsumerApi التي تتيح ضبط عنوان FleetEngine ديناميكيًا. إذا لم يتمّ استدعاء واجهة برمجة التطبيقات باستخدام قيمة FleetEngine، ستحاول استرجاعها من ملف بيان Android، أو ستستخدِم القيمة التلقائية في حال عدم توفّرها.

التحسينات

  • لا يتم عرض الخطوط المتعددة للمسار عندما تكون حالة الرحلة ARRIVED_AT_PICKUP.
  • تم تحسين إمكانية تتبُّع المركبات خارج المسار (يتطلب DriverSDK 1.15):
    • لا تُعيد ميزة تتبُّع المركبات وضع المركبة إلى المسار عندما تتجاوز المركبة نقطة الاستلام.
    • وتتيح تتبّع المركبات إمكانية عرض المركبة خارج الطريق، على سبيل المثال، في مواقف السيارات غير المعيَّنة.
  • يتم الآن تعديل رمز المركبة عندما لا تتطابق وجهة السائق مع الوجهة في Fleet Engine.

الإصدار 0.8.6 (16 كانون الأول/ديسمبر 2019)

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

  • تمت إضافة "TripInfo.getVehicleLocation()".

  • لم تعُد ConsumerMapView نهائية.

التغييرات في طريقة التنفيذ

  • يتم الآن احتساب المسافة المتبقية النشطة من ساق الخادم باستخدام مسافة الخادم (التي أبلغ عنها السائق + المسار الثابت حيثما ينطبق ذلك) بدلاً من الالتقاط المحلي. وينتج عن هذا التغيير قيم مسافات متبقية أكثر دقة.

التغييرات الأخرى

  • يجب توفير تبعيات جديدة. يمكنك الاطّلاع على ملف .pom لمعرفة التفاصيل.

    • com.google.android.datatransport:transport-api:2.0.0
    • com.google.android.datatransport:transport-backend-cct:2.0.2
    • com.google.android.datatransport:transport-runtime:2.0.0
  • تمت إضافة سجلّات لوقت استجابة طلبات الرحلة.

  • تمت إضافة سجلّات لأخطاء الاستجابة للرحلة.

ملاحظات

  • منذ الإصدار 0.8.1، أصبحت حزمة تطوير البرامج (SDK) الخاصة بالمستهلكين لنظام التشغيل Android متوفرة كأرشيف مضغوط مضغوط. للحصول على معلومات حول كيفية إزالة تحديد مصدرها، راجِع Jetifier: الوضع العكسي.

الإصدار 0.8.1 (13 أيلول/سبتمبر 2019)

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

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

  • تمت إضافة ConsumerController.disableAutoCamera() كدالة معاكسة للدالة centerMapForState().

  • تعرض VehicleLocation.getUpdateTime() الآن قيمة Long تمثّل علامة التنسيق الزمني (بالمللي ثانية).

  • تم تبسيط واجهة AuthTokenFactory لعرض طريقة واحدة لإنشاء الرموز المميّزة. تم تغيير AuthTokenFactory من واجهة إلى صفّ مجرد لتفعيل التوافق مع الإصدارات القديمة في Java7. يتوافق هذا التغيير مع الأنظمة القديمة، ولكن تم إيقاف الطرق القديمة لإنشاء رموز مميّزة للخدمة الفردية، وستتم إزالتها في النهاية.

تغييرات التنفيذ

  • تتمركز مواد العرض الآن في مركز الرمز، مع إزالة إزاحة الظل.

  • من setState إلى JOURNEY_SHARING onStartTripMonitoring() بدلاً من انتظار حالة "الرحلة" الخاضعة للمراقبة.

  • دائمًا ما يعرض البيانات عند التحديث الأول لبيانات الرحلة، حتى عندما تكون بيانات الرحلة غير متزامنة.

  • تمت إضافة Android Map Utils كملحق مقدَّم.

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

  • تم إصلاح بنية تصدير Proguard غير صالحة لـ grpc Keep.

الإصدار 0.7.0 (7 آب/أغسطس 2019)

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

  • إتاحة ميزة "مشاركة الرحلة" لجهات متعددة

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

  • طرق جديدة لـ ConsumerTripCallback

    • onTripIntermediateDestinationsUpdated().
    • onTripETAToNextTripWaypointUpdated().
  • طرق جديدة ConsumerController

    • getIntermediateDestinations().
    • setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
  • جديد TripStatuses.

    • TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION.
    • TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
  • رسائل TripWaypoint جديدة

    • getETAMillis().
    • getDistanceMeters().
  • تمت إضافة الصف TripInfo.

    • يمكنك الحصول على TripInfo للرحلة النشطة باستخدام ConsumerTripManager.getActiveTripInfo().
  • تمت إضافة "WaypointType.INTERMEDIATE_DESTINATION".

  • تمت إضافة MarkerType.TRIP_INTERMEDIATE_DESTINATION.

  • تم إنشاء ConsumerMapState.JOURNEY_SHARING من ConsumerMapStates المدمجة "ENROUTE_TO_PICKUP" و"ARRIVED_AT_PICKUP" و"ENROUTE_TO_DROPOFF" وCOMPLETE.

    • تم تعديل StateChangeCallbacks.

    • تمت إضافة onStateJourneySharing().

    • تمت إزالة onStateWaitingForPickup() وonStateDriverArrived() onStateEnroute() وonStateEndofTrip().

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

  • تم إصلاح خطأ عدم قطع المسار إلى موقع المركبة عندما تبدأ مراقبة الرحلة في منتصف الرحلة النشطة (وليس في رأس المسار).

  • تم إصلاح خطأ في عدم استدعاء عمليات استدعاء الرحلات للمستمعِين المسجَّلين في Tripmanager بعد أن جلب Tripmanager بيانات الرحلة.

  • لا يتضمّن تكبير/تصغير الكاميرا الآن سوى المسار النشط ونقطة الطريق التالية للرحلة (نقطة الطريق التي تنتمي إلى الرحلة). حتى إذا كانت الساق المتبقية مرئية، لن يتم تضمينها مطلقًا في التكبير. في السابق، كانت نقطة التسليم تُدرج في التكبير/التصغير عندما كانت المركبة إما في طريقها للاستلام أو وصلت عند الركوب. لم يعد ذلك صحيحًا.

التحسينات

  • تعبئة نقطة الطريق المتبقية الصفرية باستخدام بيانات برنامج التشغيل (يتم عرض قائمة النقاط الباقية من ConsumerTripCallback.onTripRemainingWaypointsUpdated وTripInfo.getRemainingWaypoints().

  • قم بتحديث جميع الأوقات المقدرة للوصول والمغادرة عندما يتغير الوقت المقدر للوصول إلى أول نقطة طريق في القائمة.

  • إعادة تفعيل ميزة "الكاميرا التلقائية" عند وصول السائق فقط في السابق، كانت تتم إعادة ضبط ميزة autocamera على "مفعّلة" عند تغيير حالة الرحلة. تظل ميزة "الكاميرا التلقائية" مفعَّلة تلقائيًا. ولن تتم إعادة تفعيل الكاميرا التلقائية في حال ضبط رحلة نشطة جديدة بدون إجراء مكالمة جديدة مع "startTripMonitoring()".

الإصدار 0.6.1 (26 حزيران (يونيو) 2019)

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

  • إتاحة ميزة "مشاركة الرحلة" في ميزة "التنقّل بالسيارة"

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

  • يعرض ConsumerController.getConsumerMapStyle() الآن ConsumerMapStyle بدلاً من Task<ConsumerMapStyle>.

  • تمت إضافة PolylineStyle.setZIndex().

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

  • لا يظهر الآن عرض الرسوم المتحركة للمسار إلا عند مزامنة جزء من المسار، مما يؤدي إلى تحسين تجربة المستخدم.

  • تم إصلاح مشكلة "وميض" المركبة أثناء الاستبدال السلس للصور المتحركة عندما تكون تحديثات الموقع الجغرافي للسائق قريبة من بعضها.

  • تم إصلاح خطأ حيث تبدأ المركبة من رأس المسار بدلاً من الموقع الأحدث عند بدء مراقبة الرحلة في منتصف الرحلة النشطة.

  • عرض الخط المتعدّد الأضلاع للمَعلمات النشطة للمَعلمات فوق المَعلمات المتبقية عندما تتعاطف

التحسينات

  • الآن، اعرض فئة gRPC Status باستخدام طرق غير مشوشة.

الإصدار 0.5.1.01 (17 أيار/مايو 2019)

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

  • الدعم بشكل تدريجي لميزة "المشاركة في الرحلة"

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

  • فئة ConsumerController جديدة.

PolylineType

القيمة القديمة القيمة الجديدة
TRIP_PREVIEW_AUTO_ROUTE PREVIEW_AUTO_ROUTE
TRIP_PREVIEW_TAXI_ROUTE PREVIEW_TAXI_ROUTE
TRIP_PREVIEW_TRUCK_ROUTE PREVIEW_TRUCK_ROUTE
TRIP_PREVIEW_TWO_WHEELER_ROUTE PREVIEW_TWO_WHEELER_ROUTE
TRIP_ROUTE ACTIVE_ROUTE
REMAINING_ROUTE

ConsumerTripCallback

القيمة القديمة القيمة الجديدة
onTripRouteUpdated onTripActiveRouteUpdated
onTripRemainingDistanceUpdated onTripActiveRouteRemainingDistanceUpdated
onTripRemainingWaypointsUpdated()

ConsumerController

  • يمكنك الآن ضبط عمليات معاودة الاتصال للولايات بدون إدخال الولاية.
الطريقة معاودة الاتصال
startPickupSelection setPickupSelectionCallback
startDropoffSelection setDropoffSelectionCallback
startTripPreview setTripPreviewSelectionCallback
  • يتيح لك ConsumerController.setLanguage(String languageCode) ضبط اللغة المستخدَمة في طلبات FleetEngine (لأوصاف نقطة الاستلام، على سبيل المثال).

التحسينات

  • تتضمّن الآن حالة اختيار نقطة الاستلام دبوسًا قابلاً للسحب.
  • تمت إزالة الصورة المتحركة للكاميرا في الحالة INITIALIZE.
  • تم استبدال "ManagedChannelBuilder" بـ "AndroidChannelBuilder".