يحتوي هذا القسم على ملاحظات الإصدار الخاصة بحزمة Consumer SDK لنظام التشغيل Android.
إشعار: إيقاف دعم المستوى 23 و24 و25 من واجهة برمجة التطبيقات
وفقًا لـ سياسة دعم إصدار نظام التشغيل المحمول، فإننا نقوم بتجميد الدعم لنظامي التشغيل Android 6 و7 (مستوى واجهة برمجة التطبيقات 23 و24 و25) في الإصدارات الرئيسية القادمة من مجموعة أدوات تطوير البرامج للمستهلكين لنظام Android.
ستتيح إصدارات Consumer SDK لنظام التشغيل Android التي سيتم طرحها اعتبارًا من الربع الرابع من عام 2025 الحد الأدنى من الإصدار Android 8 (المستوى 26 من واجهة برمجة التطبيقات). ستظل إصدارات حزمة تطوير البرامج (SDK) الأقدم متوافقة مع الإصدارَين 6 و7 من نظام التشغيل Android.
إذا لم تحدّد التبعيات رقم إصدار، سيحمّل بيئة التطوير المتكاملة أحدث إصدار من حزمة SDK، ولن تتوافق الإصدارات الجديدة من تطبيقك مع Android 6 و7.
حدِّد إصدارًا من Consumer SDK لنظام التشغيل Android في تبعيات إصدار تطبيقك للتحكّم في الوقت الذي ترفع فيه الحد الأدنى من نظام التشغيل المتوافق مع الإصدارات الجديدة من تطبيقك.
4.0.0 (3 أكتوبر 2025)
- تحسينات داخلية
3.2.0 (26 يونيو 2025)
- تحسينات على عملية التسجيل الداخلية
التغييرات في التبعيات والإعدادات
- بدءًا من الإصدار 3.2.0 من Consumer SDK لنظام التشغيل Android، يجب أن تتم ترقية التطبيقات إلى الإصدار 2.1 من Kotlin.
إصلاح الأخطاء
- استخدِم طول الخط المتعدد الأضلاع بدلاً من المسافة الجوية لاتخاذ قرارات بشأن الصور المتحركة الداخلية.
3.1.0 (10 مارس 2025)
- تحسينات على عملية التسجيل الداخلية
3.0.0 (6 ديسمبر 2024)
التغييرات في التبعيات والإعدادات
- بدءًا من الإصدار 3.0.0 من Consumer SDK لنظام التشغيل Android، يجب أن تتم ترقية التطبيقات إلى الإصدار 2.0 من Kotlin. يُرجى الاطّلاع على دليل نقل البيانات إلى الإصدار 3.0 من حزمة تطوير البرامج (SDK) للمستهلكين على Android.
- أصبح targetSdk الخاص بـ Consumer SDK هو Android 14 (المستوى 34 لواجهة برمجة التطبيقات). وهذا شرط يجب استيفاؤه في جميع التطبيقات التي يتم نشرها على "متجر Google Play" اعتبارًا من أغسطس 2024. اطّلِع على مقالة استيفاء متطلبات مستوى واجهة برمجة التطبيقات المستهدَف في Google Play.
2.99.0 (25 نوفمبر 2024)
إصلاح الأخطاء
- إصلاح خطأ ANR الذي يحدث عندما يستغرق تنفيذ
ConsumerApi.cleanUp()وقتًا طويلاً جدًا سيتم طرح هذه الميزة تدريجيًا (بدءًا من %0) بعد دمج الإصدار. - تم إصلاح المشكلة التي كانت تتسبّب في تلقّي برامج التشغيل أخطاء gRPC بالرمز "INTERNAL" والرسالة "Panic! هذا خطأ". سيتم طرح هذه الميزة تدريجيًا (بدءًا من %0) بعد دمج الإصدار.
2.3.0 (2 أغسطس 2024)
التغييرات في واجهة برمجة التطبيقات
إضافة ميزة تصميم الخرائط باستخدام السحابة الإلكترونية التي تتيح لك إنشاء تجربة مخصّصة لخريطة الطريق للمستخدمين بدون الحاجة إلى تعديل الرمز البرمجي لتطبيقاتك في كل مرة تجري فيها تغييرًا على تصميم الخريطة لمزيد من المعلومات، يُرجى الاطّلاع على تصميم الخريطة باستخدام ميزة "تصميم الخرائط باستخدام السحابة الإلكترونية".
أضِف طريقة
getServerTimeMillis()إلىVehicleLocationلتحديد وقت تلقّي Fleet Engine لتعديل الموقع الجغرافي.
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.
تعديل متطلبات إصدار "حزمة تطوير البرامج بالاستناد إلى بيانات خرائط Google" من الإصدار 17.0.0 إلى الإصدار 18.1.0
تم تعديل الحد الأدنى للإصدار المطلوب من مكتبة Kotlin العادية من الإصدار 1.6.10 إلى الإصدار 1.9.0
تحديث إصدارات التبعيات في "خدمات Google Play"
تم تعديل الحد الأدنى لمتطلبات إصدار مكتبة play-services-base من الإصدار 18.0.1 إلى الإصدار 18.2.0
تم تعديل الحد الأدنى لمتطلبات إصدار مكتبة play-services-basement من الإصدار 18.0.0 إلى الإصدار 18.2.0
تم تعديل الحد الأدنى للإصدار المطلوب من مكتبة play-services-location من الإصدار 17.0.0 إلى الإصدار 21.0.1
تم تعديل الحد الأدنى لمتطلبات إصدار مكتبة play-services-tasks من الإصدار 18.0.1 إلى الإصدار 18.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 من الإصدار 2.0.0 إلى الإصدار 2.6.1
تم تعديل الحد الأدنى للإصدار المطلوب من androidx.appcompat:appcompat من الإصدار 1.0.0 إلى الإصدار 1.6.1.
تم تعديل الحد الأدنى المطلوب لإصدار androidx.fragment:fragment من الإصدار 1.0.0 إلى الإصدار 1.6.1
تزيل هذه السمة واجهات برمجة التطبيقات التالية التي تم إيقافها نهائيًا سابقًا:
ConsumerTripوConsumerTripCallbackوConsumerTripManagerوConsumerTripOptions. وتم استبدالها بـTripModelوTripModelCallbackوTripModelManagerوTripModelOptions.يجب أن تتضمّن التطبيقات التي تستخدم Consumer SDK الآن
targetSdkVersionمن المستوى 31 أو أعلى لواجهة برمجة التطبيقات، وcompileSdkVersionمن المستوى 33 أو أعلى لواجهة برمجة التطبيقات.يجب الآن أن تفعّل التطبيقات التي تستخدم Consumer 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()لتحديد ما إذا تم إنشاء مثيل لواجهة برمجة التطبيقات مسبقًا.
إشعار: إيقاف واجهات برمجة التطبيقات نهائيًا
تم إيقاف فئتَي التعليقات التوضيحية
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نهائيًا
تغييرات أخرى وإصلاحات للأخطاء
يتيح طلب أحدث أداة عرض في "حزمة تطوير البرامج بالاستناد إلى بيانات خرائط Google". يمكنك الاطّلاع على التفاصيل في New Map Renderer.
توفّر هذه السمة نطاقًا من حزمة تطوير البرامج (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)
إصلاح الأخطاء
- تم إصلاح الخطأ الذي كان يتسبّب في تسجيل عدد زيارات فارغ في معاودة الاتصال
onTripActiveRouteTrafficUpdated.
الميزات الجديدة
- تتوفّر الآن ميزة "الخطوط المتعددة الأضلاع التي تراعي حركة المرور" بشكل عام.
1.1.2 (27 أكتوبر 2022)
إصلاح الأخطاء
- تم إصلاح الخطأ الذي يتسبّب في اختفاء خطوط المسار المتعددة الأضلاع بعد بدء
JourneySharingSessionأكثر من مرة لـTripModel.
إشعار: إيقاف دعم الإصدار 5 من نظام التشغيل Android (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)
تغيير الاعتمادية
- يتم خفض الحد الأدنى لمستوى واجهة برمجة تطبيقات Android المتوافق إلى 21.
الإصدار 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(). - استبدِل أنواع الإرجاع في Guava (
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. - تم الآن تمكين AutoCamera بشكل افتراضي ولا يتم إعادة تمكينه أو تعطيله تلقائيًا أبدًا.
في السابق، كانت ميزة AutoCamera تُعاد تمكينها تلقائيًا على
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. - تم تحسين تتبُّع المركبات التي تنحرف عن المسار (يتطلّب الإصدار 1.15 من DriverSDK):
- لا يتم محاذاة المركبة مع المسار عندما تتجاوز نقطة الاستلام.
- تتيح ميزة تتبُّع المركبة عرض المركبة خارج الطريق، مثلاً في مواقف السيارات غير المحدّدة على الخريطة.
- يتم الآن تحديث رمز السيارة عندما لا تتطابق وجهة السائق مع الوجهة الموجودة في 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 كأرشيف zip محوّل. للحصول على معلومات حول كيفية إزالة النفاثة منه، راجع Jetifier: Reverse Mode (وضع العكسي).
الإصدار 0.8.1 (13 سبتمبر 2019)
الميزات الجديدة
إتاحة ConsumerMapView
يتم الآن شحن عناصر ODRD في مستودع Maven بدلاً من ملف zip بتنسيق .aar. لمزيد من المعلومات، يُرجى الاطّلاع على إضافة حزمة Consumer SDK إلى تطبيقك.
التغييرات في واجهة برمجة التطبيقات
تمت إضافة
ConsumerController.disableAutoCamera()كدالة معاكسة للدالةcenterMapForState().تعرض الدالة
VehicleLocation.getUpdateTime()الآن قيمة Long تمثّل الطابع الزمني (بالمللي ثانية).تم تبسيط واجهة
AuthTokenFactoryلعرض طريقة واحدة لإنشاء الرموز المميزة. تم تغييرAuthTokenFactoryمن واجهة إلى فئة مجرّدة لتفعيل التوافق مع الإصدارات القديمة في Java7. هذا التغيير متوافق مع الإصدارات السابقة، ولكن تم إيقاف الطُرق القديمة لإنشاء الرموز المميزة للخدمة الفردية نهائيًا، وستتم إزالتها في النهاية.
التغييرات في التنفيذ
تم الآن توسيط مواد العرض في منتصف الرمز، ما يؤدي إلى إلغاء إزاحة الظل.
setStateإلىJOURNEY_SHARING onStartTripMonitoring()بدلاً من انتظار حالة الرحلة التي تتم مراقبتها.تعرض هذه السمة دائمًا بيانات لتعديل بيانات الرحلة الأولى، حتى عندما تكون بيانات الرحلة غير متزامنة.
تمت إضافة "أدوات خرائط Android" كملحق متوفّر.
إصلاح الأخطاء
- تم إصلاح بنية التصدير غير الصالحة في Proguard لعملية الاحتفاظ بـ grpc.
الإصدار 0.7.0 (7 أغسطس 2019)
الميزات الجديدة
- إتاحة وجهات متعدّدة في ميزة "مشاركة الرحلة"
التغييرات في واجهة برمجة التطبيقات
طُرق جديدة لـ
ConsumerTripCallbackonTripIntermediateDestinationsUpdated().onTripETAToNextTripWaypointUpdated().
طرق
ConsumerControllerجديدةgetIntermediateDestinations().setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
جديد
TripStatusesTripStatus.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)
الميزات الجديدة
- إتاحة ميزة "مشاركة الرحلة" في Carpool
التغييرات في واجهة برمجة التطبيقات
تعرض
ConsumerController.getConsumerMapStyle()الآنConsumerMapStyleبدلاً منTask<ConsumerMapStyle>.تمت إضافة
PolylineStyle.setZIndex().
إصلاح الأخطاء
لا يتم عرض الرسوم المتحركة للمسار الآن إلا عندما تكون أجزاء المسار متزامنة، ما يؤدي إلى تحسين تجربة المستخدم.
تم إصلاح مشكلة "وميض" المركبة أثناء استيفاء الحركة عندما تكون تحديثات موقع السائق متقاربة.
تم إصلاح الخطأ الذي يتسبب في بدء المركبة من بداية المسار بدلاً من بدءها من آخر موقع جغرافي تم تحديده عند بدء تتبُّع الرحلة في منتصف رحلة نشطة.
عرض خطوط مضلّعة للمسار النشط فوق المسار المتبقي عند تداخلهما
التحسينات
- الآن، اعرض فئة
StatusgRPC مع طرق غير مشفّرة.
الإصدار 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.