این بخش حاوی یادداشتهای انتشار برای Consumer SDK برای Android است.
2.3.0 (2 اوت 2024)
API تغییر می کند
پشتیبانی از طراحی نقشههای مبتنی بر ابر را اضافه کنید، که به شما امکان میدهد یک تجربه نقشه راه سفارشیسازی شده را برای کاربران خود بدون نیاز به بهروزرسانی کد برنامههای خود هر بار که تغییر سبک نقشه ایجاد میکنید، ایجاد کنید. برای اطلاعات بیشتر، به سبک نقشه با طراحی نقشه های مبتنی بر ابر مراجعه کنید.
متد
getServerTimeMillis()
را بهVehicleLocation
اضافه کنید تا زمان دریافت بهروزرسانی مکان توسط Fleet Engine را تعیین کنید.
2.2.0 (7 مه 2024)
API تغییر می کند
- API پشتیبانی برای ادغام Jetpack Compose اضافه شد. این یک ویژگی آزمایشی است. برای جزئیات در مورد ادغام با Jetpack Compose، با نماینده خود تماس بگیرید.
2.1.0 (17 ژانویه 2024)
رفع اشکال
- خرابی هایی را که زمانی رخ می دهد که SDK بیش از یک بار در طول چرخه عمر برنامه مقداردهی اولیه شود، برطرف می کند.
API تغییر می کند
- روشی را برای بازیابی نمونه
GoogleMap
ایجاد شده توسط SDK (ConsumerGoogleMap.getGoogleMap()
) معرفی می کند. - API را برای بازیابی نمونه های
Marker
ایجاد شده توسط SDK برای نشان دادن وسیله نقلیه معرفی می کند (ConsumerController.getConsumerMarker()
). - API را برای دریافت بهروزرسانیهای پیشبینیشده مشتری برای زمان و مسافت در طول اشتراکگذاری سفر (
ProjectedRouteEta
) معرفی میکند.
1.99.2 (3 نوامبر 2023)
خرابی هایی را که زمانی رخ می دهد که SDK از یک فرآیند راه دور، جدا از برنامه، مقداردهی اولیه می شود، برطرف می کند.
خرابی هایی را که هنگام اجرای انیمیشن دوربین رخ می دهد و فضای عمودی یا افقی کافی برای بالشتک وجود ندارد برطرف می کند. این فقط در آخرین رندر نقشه ها رخ می دهد.
اشکالی را برطرف میکند که باعث میشود مرحله اول یک سفر پشت سر هم زمانی که مرحله دوم از همان جاده میگذرد، کوتاه شود.
مسائل
-
ConsumerApi.initialize()
یک استثنا ایجاد می کند اگر زمانی که یک نمونه API از قبل وجود داشته باشد فراخوانی شود. برای حل این مشکل، ابتداConsumerApi.getInstance()
را فراخوانی کنید وTask
برگشتی را ارزیابی کنید تا مشخص شود که آیا یک نمونه API از قبل وجود دارد یا خیر.
2.0.0 (15 سپتامبر 2023)
اطلاعیه: شکستن تغییرات
حداقل نیاز سطح API از 21 به 23 به روز می شود.
نسخه مورد نیاز Maps SDK را از نسخه 17.0.0 به نسخه 18.1.0 به روز می کند
حداقل نیاز نسخه کتابخانه استاندارد Kotlin از نسخه 1.6.10 به نسخه 1.9.0 به روز شده است
نسخههای وابستگی خدمات Google Play را بهروزرسانی کنید
حداقل نسخه مورد نیاز Play-services-base Library از نسخه 18.0.1 به نسخه 18.2.0 به روز شده است.
حداقل نسخه مورد نیاز Play-services-Basement Library از نسخه 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 به روز شده است
APIهای قبلاً منسوخ شده زیر را حذف می کند:
ConsumerTrip
،ConsumerTripCallback
،ConsumerTripManager
،ConsumerTripOptions
.TripModel
،TripModelCallback
،TripModelManager
وTripModelOptions
جایگزین آنها شدند.برنامههایی که از Consumer SDK استفاده میکنند، اکنون باید
targetSdkVersion
از API 31 یا بالاتر،compileSdkVersion
از API 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()
اکنون یک استثنا ایجاد می کند اگر زمانی که یک نمونه API از قبل ایجاد شده است فراخوانی شود.Task
که توسطConsumerApi.getInstance()
برگردانده می شود باید برای تعیین اینکه آیا یک نمونه API از قبل ایجاد شده است استفاده شود.
اطلاعیه: منسوخ شدن API
کلاس های حاشیه نویسی
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
منسوخ می کند.
سایر تغییرات و رفع اشکال
از درخواست جدیدترین رندر Maps SDK پشتیبانی می کند. برای جزئیات بیشتر به رندر نقشه جدید مراجعه کنید.
پشتیبانی از محدوده Maps SDK را از نسخه های v18.1.0 (شامل) تا نسخه 19.0.0 (انحصاری) ارائه می دهد.
رفع خطای «بیش از مهلت» برای ارتباطات داخلی بین SDK و Google Backend.
رفع مشکل رندر برای صفحه نمایش با اندازه کوچک و حالت تصویر در تصویر.
راهنمای مهاجرت
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 (25 ژوئیه 2022)
برای نسخه SDK نسخه 1.1.1 خود، یک سال دیگر از برنامههای در حال اجرا بر روی Android 5 برای هر دو سطح API 21 و 22 پشتیبانی میکنیم.
این یعنی چی:
SDK مصرفکننده که روی برنامههای Android شما اجرا میشود، حداقل تا 30 ژوئن 2023 از Android 5 (سطح API 21) پشتیبانی میکند.
پس از 30 ژوئن 2023، ما فقط از Android API سطوح 23 و بالاتر پشتیبانی خواهیم کرد. به عبارت دیگر، پس از آن تاریخ، پشتیبانی از Android API سطوح 21 و 22 را در تمامی نسخههای SDK متوقف خواهیم کرد. این بدان معنی است که اشکالات مربوط به Android 21 یا 22 در هر نسخه SDK (از جمله 4.x) برطرف نخواهد شد و ما تضمین نمی کنیم که SDK ها به درستی رفتار کنند.
نسخه 1.1.1 (25 ژوئیه 2022)
تغییر وابستگی
- حداقل سطح Android API پشتیبانی شده را به 21 تنزل می دهد.
نسخه 1.1.0 (28 آوریل 2022)
- بهبودهای داخلی
نسخه 1.0.19 (17 مارس 2022)
رفع اشکال
- رفع نشت حافظه در کلاس
ConsumerApi
.
نسخه 1.0.14 (30 نوامبر 2021)
حداقل سطح Android API پشتیبانی شده اکنون 23 است.
API تغییر می کند
تغییرات در کلاس های
ConsumerTrip
وConsumerTripManager
.- نام برخی از روشها را پاک کرد تا معنای آنها واضحتر شود و با پلتفرم iOS هماهنگ شود.
تغییرات در
ConsumerTripCallback
،ConsumerTrip
وTripInfo
.نام برخی از کلاس ها را تغییر داد تا برابری با iOS ایجاد کند.
TripModel
،TirpModelManager
وTripModelOptions
برای منسوخ کردنConsumerTrip
،ConsumerTripManager
وConsumerTripOptions
معرفی کرد.نام برخی از روش ها را پاک کرد. نظرات JavaDoc را اصلاح یا به روشهایی اضافه کرد تا معانی واضحتری را منتقل کند.
بهبود مدیریت خطا
سفارشی سازی استایل
بسته بندی های قدیمی منسوخ شده
-
MarkerStyleOptions
وPolylineStyleOptions
منسوخ شدند و باMarkerOptions
وPolylineOptions
جایگزین شدند که هر دو با Maps SDK مشترک هستند.
-
نظارت بر تصادف
تشخیص تصادف و ثبت گزارش اضافه شده است.
- افزودنی ایجاد شد تا به شما امکان دهد از این قابلیت انصراف دهید. این به عنوان بخشی از یک تلاش بزرگتر در سطح جغرافیایی برای نظارت بر تصادف انجام شد.
احراز هویت تغییر می کند
- روش های غیر ضروری را از رابط های احراز هویت حذف کنید.
- پارامتر
ServiceType
حذف شد.
- پارامتر
نسخه 0.9.28 (18 مه 2021)
API تغییر می کند
- برای استفاده از
TripInfo
به عنوان پارامتر، همه روشهایConsumerTripCallback
را بهروزرسانی کرد. -
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)
API تغییر می کند
- این نسخه Traffic Aware Polylines را معرفی می کند. -
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()
دیگر null را به عنوان آرگومان نمی پذیرد.
-
نسخه 0.9.9 (15 ژوئیه 2020)
API تغییر می کند
- این یک تغییر عمده است که یک معماری مدولار شده با یک رابطه واضح تر بین لایه فقط داده (به عنوان مثال
ConsumerTripManager
) و لایه رابط کاربر (به عنوان مثالJourneySharingSession
) معرفی می کند. برای اطلاعات در مورد مهاجرت به معماری جدید، راهنمای مهاجرت مدولارسازی را ببینید. - شیConsumerTrip
اکنون ازConsumerTripManager.getTrip()
بدست می آید.-
ConsumerTrip.unregisterCallback
بهConsumerTrip.unregisterTripCallback
تغییر نام داده است. -
ConsumerTrip.isCallbackRegistered
بهConsumerTrip.isTripCallbackRegistered
تغییر نام داده است. -
ConsumerTrip.setConsumerTripOptions()
وConsumerTrip.getConsumerTripOptions()
اضافه شد. -
ConsumerTrip.setAutoRefreshInterval()
حذف شد.
-
- APIهای اشتراک گذاری غیر سفر حذف شدند.
- نقشه تراکم خودرو حذف شد.
- وضعیت پیشنمایش سفر حذف شد.
- وضعیت انتخاب پیکاپ حذف شد.
- حالت انتخاب حذف حذف شد.
- انواع نشانگرهای زیر حذف شد:
SELECTED_PICKUP_POINT
،SUGGESTED_PICKUP_POINT
،HIGHLIGHTED_PICKUP_POINT
، وSELECTED_DROPOFF_POINT
.
-
OnConsumerMarkerClickCallback
وConsumerMapReadyCallback
را از رابط ها به کلاس های انتزاعی تغییر داد. -
ConsumerController.getCameraUpdate()
ConsumerController.isAutoCameraEnabled()
وConsumerController.enableAutoCamera()
اضافه شد. - FAB سفارشی و روشهای مرتبط با آن (
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)
API تغییر می کند
-
TripInfo.getVehicleId()
،TripInfo.getNumberOfPassengers()
،TripInfo.getIntermediateDestinationIndex()
،TripInfo.getTripActiveRoute()
وTripInfo.getTripRemainingRoute()
اضافه شد. - کلاس
options
اضافه شده در طول مقداردهی اولیهConsumerApi
که به آدرسFleetEngine
اجازه می دهد به صورت پویا تنظیم شود. اگر API با مقدارFleetEngine
فراخوانی نشود، سعی می کند آن را از مانیفست اندروید واکشی کند یا در غیر این صورت به مقدار پیش فرض برمی گردد.
بهبودها
- وقتی وضعیت سفر
ARRIVED_AT_PICKUP
باشد، چند خط مسیر نمایش داده نمیشود. - ردیابی خودروی خارج از مسیر بهبود یافته است (نیاز به DriverSDK 1.15 دارد):
- ردیابی وسیله نقلیه وقتی وسیله نقلیه از نقطه وانت عبور می کند، وسیله نقلیه را به مسیر نمی برد.
- ردیابی خودرو امکان نمایش خودرو در خارج از جاده را فراهم می کند. به عنوان مثال، در پارکینگ های بدون نقشه.
- نماد وسیله نقلیه اکنون زمانی به روز می شود که مقصد راننده با مقصد در Fleet Engine مطابقت نداشته باشد.
نسخه 0.8.6 (16 دسامبر 2019)
API تغییر می کند
TripInfo.getVehicleLocation()
اضافه شد.ConsumerMapView
دیگر نهایی نیست.
تغییرات پیاده سازی
- فاصله باقی مانده پا فعال اکنون با استفاده از فاصله سرور (راننده گزارش شده + مسیر ثابت در صورت لزوم) به جای snapping محلی محاسبه می شود. این تغییر مقادیر فاصله باقی مانده دقیق تری را ایجاد می کند.
تغییرات دیگر
وابستگی های جدید مورد نیاز است. برای جزئیات به فایل .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، Consumer SDK برای Android به عنوان یک بایگانی zip jetified ارسال می شود. برای اطلاعات در مورد نحوه جدا کردن آن، به Jetifier: Reverse mode مراجعه کنید.
نسخه 0.8.1 (13 سپتامبر 2019)
ویژگی های جدید
پشتیبانی از ConsumerMapView .
مصنوعات ODRD اکنون به جای فایل فشرده aar در یک مخزن maven ارسال می شوند. برای اطلاعات بیشتر، به افزودن SDK مصرف کننده به برنامه خود مراجعه کنید.
API تغییر می کند
ConsumerController.disableAutoCamera()
به عنوان تابع مخالفcenterMapForState()
اضافه کرد.اکنون
VehicleLocation.getUpdateTime()
یک Long برمیگرداند که نشاندهنده مهر زمانی (بر حسب میلیثانیه) است.رابط
AuthTokenFactory
را برای نمایش یک روش واحد برای تولید توکن ساده کرد.AuthTokenFactory
از یک رابط به یک کلاس انتزاعی تغییر داد تا سازگاری به عقب در Java7 را فعال کند. این تغییر با نسخه قبلی سازگار است، اما روشهای قدیمی برای تولید توکن سرویس منسوخ شده و در نهایت حذف خواهند شد.
تغییرات پیاده سازی
داراییها اکنون در مرکز نمادها متمرکز شدهاند و افست سایه را حذف میکند.
به جای اینکه منتظر وضعیت سفر نظارت شده باشید، حالت را به
JOURNEY_SHARING onStartTripMonitoring()
setState
.همیشه دادهها را برای بهروزرسانی دادههای سفر اول برمیگرداند، حتی زمانی که دادههای سفر هماهنگ نیستند.
به عنوان یک وابستگی ارائه شده، برنامه Android Map Utils اضافه شد.
رفع اشکال
- دستور خروجی شکسته proguard برای grpc keep ثابت شد.
نسخه 0.7.0 (7 اوت 2019)
ویژگی های جدید
- پشتیبانی چند مقصدی برای اشتراک گذاری سفر.
API تغییر می کند
روش های جدید برای
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()
برگردانده میشود.زمانی که ETA به اولین نقطه بین لیست تغییر می کند، تمام ETA های باقیمانده بین راه را به روز کنید.
فقط زمانی که راننده به پیکاپ رسید، دوربین خودکار را دوباره فعال کنید. قبلاً برای هر تغییر وضعیت سفر، دوربین خودکار به حالت فعال بازنشانی میشد. دوربین خودکار همچنان به طور پیش فرض فعال است. اگر یک سفر فعال جدید بدون تماس جدید با
startTripMonitoring()
تنظیم شود، دوربین خودکار دوباره فعال نمی شود.
نسخه 0.6.1 (26 ژوئن 2019)
ویژگی های جدید
- پشتیبانی Carpool برای اشتراک گذاری سفر.
API تغییر می کند
ConsumerController.getConsumerMapStyle()
اکنونConsumerMapStyle
به جایTask<ConsumerMapStyle>
برمی گرداند.PolylineStyle.setZIndex()
اضافه شد.
رفع اشکال
پویانمایی مسیر اکنون تنها زمانی اتفاق میافتد که بخش مسیر همگام باشد و در نتیجه تجربه کاربر بهبود یافته است.
هنگامی که بهروزرسانیهای مکان راننده نزدیک به هم هستند، «سوسو زدن» خودرو در حین درونیابی انیمیشن برطرف شد.
هنگامی که نظارت بر سفر در میانه یک سفر فعال شروع می شود، اشکالی که در آن وسیله نقلیه به جای به روز رسانی ترین مکان خود در سر مسیر حرکت می کند، رفع شد.
چند خط مسیر فعال را در بالای مسیر باقیمانده در صورت همپوشانی نشان دهید.
بهبودها
- اکنون کلاس
Status
gRPC را با متدهای بدون ابهام در معرض نمایش قرار دهید.
نسخه 0.5.1.01 (17 مه 2019)
ویژگی های جدید
- پشتیبانی پشت سر هم از Journey Sharing.
API تغییر می کند
- کلاس
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 را تنظیم کنید (مثلاً برای توضیحات نقطه دریافت).
بهبودها
- حالت انتخاب Dropoff اکنون دارای یک پین قابل کشیدن است.
- انیمیشن دوربین در حالت
INITIALIZE
حذف شد. -
AndroidChannelBuilder
جایگزینManagedChannelBuilder
شد.
این بخش حاوی یادداشتهای انتشار برای Consumer SDK برای Android است.
2.3.0 (2 اوت 2024)
API تغییر می کند
پشتیبانی از طراحی نقشههای مبتنی بر ابر را اضافه کنید، که به شما امکان میدهد یک تجربه نقشه راه سفارشیسازی شده را برای کاربران خود بدون نیاز به بهروزرسانی کد برنامههای خود هر بار که تغییر سبک نقشه ایجاد میکنید، ایجاد کنید. برای اطلاعات بیشتر، به سبک نقشه با طراحی نقشه های مبتنی بر ابر مراجعه کنید.
متد
getServerTimeMillis()
را بهVehicleLocation
اضافه کنید تا زمان دریافت بهروزرسانی مکان توسط Fleet Engine را تعیین کنید.
2.2.0 (7 مه 2024)
API تغییر می کند
- API پشتیبانی برای ادغام Jetpack Compose اضافه شد. این یک ویژگی آزمایشی است. برای جزئیات در مورد ادغام با Jetpack Compose، با نماینده خود تماس بگیرید.
2.1.0 (17 ژانویه 2024)
رفع اشکال
- خرابی هایی را که زمانی رخ می دهد که SDK بیش از یک بار در طول چرخه عمر برنامه مقداردهی اولیه شود، برطرف می کند.
API تغییر می کند
- روشی را برای بازیابی نمونه
GoogleMap
ایجاد شده توسط SDK (ConsumerGoogleMap.getGoogleMap()
) معرفی می کند. - API را برای بازیابی نمونه های
Marker
ایجاد شده توسط SDK برای نشان دادن وسیله نقلیه معرفی می کند (ConsumerController.getConsumerMarker()
). - API را برای دریافت بهروزرسانیهای پیشبینیشده مشتری برای زمان و مسافت در طول اشتراکگذاری سفر (
ProjectedRouteEta
) معرفی میکند.
1.99.2 (3 نوامبر 2023)
خرابی هایی را که زمانی رخ می دهد که SDK از یک فرآیند راه دور، جدا از برنامه، مقداردهی اولیه می شود، برطرف می کند.
خرابی هایی را که هنگام اجرای انیمیشن دوربین رخ می دهد و فضای عمودی یا افقی کافی برای بالشتک وجود ندارد برطرف می کند. این فقط در آخرین رندر نقشه ها رخ می دهد.
اشکالی را برطرف میکند که باعث میشود مرحله اول یک سفر پشت سر هم زمانی که مرحله دوم از همان جاده میگذرد، کوتاه شود.
مسائل
-
ConsumerApi.initialize()
یک استثنا ایجاد می کند اگر زمانی که یک نمونه API از قبل وجود داشته باشد فراخوانی شود. برای حل این مشکل، ابتداConsumerApi.getInstance()
را فراخوانی کنید وTask
برگشتی را ارزیابی کنید تا مشخص شود که آیا یک نمونه API از قبل وجود دارد یا خیر.
2.0.0 (15 سپتامبر 2023)
اطلاعیه: شکستن تغییرات
حداقل نیاز سطح API از 21 به 23 به روز می شود.
نسخه مورد نیاز Maps SDK را از نسخه 17.0.0 به نسخه 18.1.0 به روز می کند
حداقل نیاز نسخه کتابخانه استاندارد Kotlin از نسخه 1.6.10 به نسخه 1.9.0 به روز شده است
نسخههای وابستگی خدمات Google Play را بهروزرسانی کنید
حداقل نسخه مورد نیاز Play-services-base Library از نسخه 18.0.1 به نسخه 18.2.0 به روز شده است.
حداقل نسخه مورد نیاز Play-services-Basement Library از نسخه 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 به روز شده است
APIهای قبلاً منسوخ شده زیر را حذف می کند:
ConsumerTrip
،ConsumerTripCallback
،ConsumerTripManager
،ConsumerTripOptions
.TripModel
،TripModelCallback
،TripModelManager
وTripModelOptions
جایگزین آنها شدند.برنامههایی که از Consumer SDK استفاده میکنند، اکنون باید
targetSdkVersion
از API 31 یا بالاتر،compileSdkVersion
از API 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()
اکنون یک استثنا ایجاد می کند اگر زمانی که یک نمونه API از قبل ایجاد شده است فراخوانی شود.Task
که توسطConsumerApi.getInstance()
برگردانده می شود باید برای تعیین اینکه آیا یک نمونه API از قبل ایجاد شده است استفاده شود.
اطلاعیه: منسوخ شدن API
کلاس های حاشیه نویسی
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
منسوخ می کند.
سایر تغییرات و رفع اشکال
از درخواست جدیدترین رندر Maps SDK پشتیبانی می کند. برای جزئیات بیشتر به رندر نقشه جدید مراجعه کنید.
پشتیبانی از محدوده Maps SDK را از نسخه های v18.1.0 (شامل) تا نسخه 19.0.0 (انحصاری) ارائه می دهد.
رفع خطای «بیش از مهلت» برای ارتباطات داخلی بین SDK و Google Backend.
رفع مشکل رندر برای صفحه نمایش با اندازه کوچک و حالت تصویر در تصویر.
راهنمای مهاجرت
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 (25 ژوئیه 2022)
برای نسخه SDK نسخه 1.1.1 خود، یک سال دیگر از برنامههای در حال اجرا بر روی Android 5 برای هر دو سطح API 21 و 22 پشتیبانی میکنیم.
این یعنی چی:
SDK مصرفکننده که روی برنامههای Android شما اجرا میشود، حداقل تا 30 ژوئن 2023 از Android 5 (سطح API 21) پشتیبانی میکند.
پس از 30 ژوئن 2023، ما فقط از Android API سطوح 23 و بالاتر پشتیبانی خواهیم کرد. به عبارت دیگر، پس از آن تاریخ، پشتیبانی از Android API سطوح 21 و 22 را در تمامی نسخههای SDK متوقف خواهیم کرد. این بدان معنی است که اشکالات مربوط به Android 21 یا 22 در هر نسخه SDK (از جمله 4.x) برطرف نخواهد شد و ما تضمین نمی کنیم که SDK ها به درستی رفتار کنند.
نسخه 1.1.1 (25 ژوئیه 2022)
تغییر وابستگی
- حداقل سطح Android API پشتیبانی شده را به 21 تنزل می دهد.
نسخه 1.1.0 (28 آوریل 2022)
- بهبودهای داخلی
نسخه 1.0.19 (17 مارس 2022)
رفع اشکال
- رفع نشت حافظه در کلاس
ConsumerApi
.
نسخه 1.0.14 (30 نوامبر 2021)
حداقل سطح Android API پشتیبانی شده اکنون 23 است.
API تغییر می کند
تغییرات در کلاس های
ConsumerTrip
وConsumerTripManager
.- نام برخی از روشها را پاک کرد تا معنای آنها واضحتر شود و با پلتفرم iOS هماهنگ شود.
تغییرات در
ConsumerTripCallback
،ConsumerTrip
وTripInfo
.نام برخی از کلاس ها را تغییر داد تا برابری با iOS ایجاد کند.
TripModel
،TirpModelManager
وTripModelOptions
برای منسوخ کردنConsumerTrip
،ConsumerTripManager
وConsumerTripOptions
معرفی کرد.نام برخی از روش ها را پاک کرد. نظرات JavaDoc را اصلاح یا به روشهایی اضافه کرد تا معانی واضحتری را منتقل کند.
بهبود مدیریت خطا
سفارشی سازی استایل
بسته بندی های قدیمی منسوخ شده
-
MarkerStyleOptions
وPolylineStyleOptions
منسوخ شدند و باMarkerOptions
وPolylineOptions
جایگزین شدند که هر دو با Maps SDK مشترک هستند.
-
نظارت بر تصادف
تشخیص تصادف و ثبت گزارش اضافه شده است.
- افزودنی ایجاد شد تا به شما امکان دهد از این قابلیت انصراف دهید. این به عنوان بخشی از یک تلاش بزرگتر در سطح جغرافیایی برای نظارت بر تصادف انجام شد.
احراز هویت تغییر می کند
- روش های غیر ضروری را از رابط های احراز هویت حذف کنید.
- پارامتر
ServiceType
حذف شد.
- پارامتر
نسخه 0.9.28 (18 مه 2021)
API تغییر می کند
- برای استفاده از
TripInfo
به عنوان پارامتر، همه روشهایConsumerTripCallback
را بهروزرسانی کرد. -
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)
API تغییر می کند
- این نسخه Traffic Aware Polylines را معرفی می کند. -
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()
دیگر null را به عنوان آرگومان نمی پذیرد.
-
نسخه 0.9.9 (15 ژوئیه 2020)
API تغییر می کند
- این یک تغییر عمده است که یک معماری مدولار شده با یک رابطه واضح تر بین لایه فقط داده (به عنوان مثال
ConsumerTripManager
) و لایه رابط کاربر (به عنوان مثالJourneySharingSession
) معرفی می کند. برای اطلاعات در مورد مهاجرت به معماری جدید، راهنمای مهاجرت مدولارسازی را ببینید. - شیConsumerTrip
اکنون ازConsumerTripManager.getTrip()
بدست می آید.-
ConsumerTrip.unregisterCallback
بهConsumerTrip.unregisterTripCallback
تغییر نام داده است. -
ConsumerTrip.isCallbackRegistered
بهConsumerTrip.isTripCallbackRegistered
تغییر نام داده است. -
ConsumerTrip.setConsumerTripOptions()
وConsumerTrip.getConsumerTripOptions()
اضافه شد. -
ConsumerTrip.setAutoRefreshInterval()
حذف شد.
-
- APIهای اشتراک گذاری غیر سفر حذف شدند.
- نقشه تراکم خودرو حذف شد.
- وضعیت پیشنمایش سفر حذف شد.
- وضعیت انتخاب پیکاپ حذف شد.
- حالت انتخاب حذف حذف شد.
- انواع نشانگرهای زیر حذف شد:
SELECTED_PICKUP_POINT
،SUGGESTED_PICKUP_POINT
،HIGHLIGHTED_PICKUP_POINT
، وSELECTED_DROPOFF_POINT
.
-
OnConsumerMarkerClickCallback
وConsumerMapReadyCallback
را از رابط ها به کلاس های انتزاعی تغییر داد. - اضافه شده
ConsumerController.getCameraUpdate()
،ConsumerController.isAutoCameraEnabled()
، وConsumerController.enableAutoCamera()
. - FAB سفارشی و روشهای مرتبط با آن را حذف کرد (
ConsumerController.isMyLocationFabEnabled
وConsumerController.setMyLocationFabEnabled
).
تغییرات اجرای
- یک
ConsumerTripCallback
، چه درLifecycleOwner
ثبت شده یا بدون آن ، دیگر به طور خودکار درTripStatus.COMPLETE
یاTripStatus.CANCELED
ثبت نام نکنید. - Autocamera اکنون به طور پیش فرض فعال شده است و هرگز خود را مجدداً قابل استفاده نمی کند. پیش از این ، AutoCamera به طور خودکار در
TripStatus.ARRIVED_AT_PICKUP
امکان پذیر بود. 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
v0.9.1 (23 مارس 2020)
API تغییر می کند
- اضافه شده
TripInfo.getVehicleId()
،TripInfo.getNumberOfPassengers()
،TripInfo.getIntermediateDestinationIndex()
،TripInfo.getTripActiveRoute()
وTripInfo.getTripRemainingRoute()
. - کلاس
options
اضافه شده در هنگام اولیه سازیConsumerApi
استفاده می شود که به آدرسFleetEngine
اجازه می دهد تا به صورت پویا تنظیم شود. اگر API با مقدارFleetEngine
فراخوانده نشود ، سعی می کند آن را از مانیفست اندروید واکشی کند یا در غیر این صورت به مقدار پیش فرض بازگردد.
پیشرفت
- با رسیدن وضعیت
ARRIVED_AT_PICKUP
پلی خط مسیر نمایش داده نمی شود. - ردیابی وسیله نقلیه خارج از مسیر بهبود یافته است (به DriverDK 1.15 نیاز دارد):
- ردیابی وسیله نقلیه وقتی وسیله نقلیه از نقطه وانت عبور می کند ، وسیله نقلیه را به مسیر نمی دهد.
- ردیابی وسیله نقلیه نمایش وسیله نقلیه خارج از جاده را امکان پذیر می کند. به عنوان مثال ، در پارکینگ های غیرمجاز.
- نماد وسیله نقلیه اکنون به روز می شود که مقصد راننده با مقصد موتور ناوگان مطابقت نداشته باشد.
V0.8.6 (16 دسامبر 2019)
API تغییر می کند
اضافه شده
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 مصرف کننده برای کشتی های اندرویدی به عنوان بایگانی Zip Jetified. برای کسب اطلاعات در مورد نحوه جداسازی آن ، به Jetifier: Mode Reverse مراجعه کنید.
V0.8.1 (13 سپتامبر 2019)
ویژگی های جدید
پشتیبانی از ConsumerMapView .
مصنوعات ODRD اکنون به جای یک Zipfile .AAR در یک مخزن Maven حمل می شوند. برای اطلاعات بیشتر ، به اضافه کردن SDK Consumer به برنامه خود مراجعه کنید.
API تغییر می کند
اضافه شده
ConsumerController.disableAutoCamera()
به عنوان عملکرد مخالفcenterMapForState()
.VehicleLocation.getUpdateTime()
اکنون مدت طولانی را نشان می دهد که نشان دهنده زمان بندی (در میلی ثانیه) است.رابط
AuthTokenFactory
را برای افشای یک روش واحد برای تولید توکن ساده کرد.AuthTokenFactory
از یک رابط به یک کلاس انتزاعی تغییر داد تا سازگاری به عقب در Java7 امکان پذیر شود. این تغییر سازگار با عقب است ، اما روشهای قدیمی برای نسل توکن تک سرویس مستهلک می شوند و در نهایت حذف می شوند.
تغییرات اجرای
دارایی که اکنون در مرکز نماد قرار دارد و جبران سایه را از بین می برد.
به جای انتظار برای وضعیت نظارتی سفر ،
setState
toJOURNEY_SHARING onStartTripMonitoring()
.همیشه داده ها را برای به روزرسانی داده های سفر اول باز می گرداند ، حتی اگر داده های سفر از همگام سازی خارج شوند.
استفاده از نقشه های اندرویدی به عنوان وابستگی ارائه شده اضافه شده است.
رفع اشکال
- ثابت نحو صادرات شکسته شکسته برای نگه داشتن GRPC.
V0.7.0 (7 اوت 2019)
ویژگی های جدید
- پشتیبانی چند مرحله ای برای اشتراک گذاری سفر.
API تغییر می کند
روشهای جدید برای
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 قبلاً داده های سفر را بدست آورده است ، فراخوانی نشده است.
بزرگنمایی دوربین اکنون فقط شامل مسیر فعال و مسیر سفر بعدی (ایستگاه راه که متعلق به سفر است) است. حتی اگر پای باقی مانده قابل مشاهده باشد ، زوم هرگز آن را شامل نمی شود. پیش از این ، هنگامی که وسیله نقلیه یا به وانت می رسید ، یا به وانت رسید ، نقطه کشویی در بزرگنمایی گنجانده شده بود. این دیگر درست نیست.
پیشرفت
نقطه راه باقی مانده Zeroth را با داده های درایور جمع کنید (لیست Waypoint باقیمانده از
ConsumerTripCallback.onTripRemainingWaypointsUpdated
وTripInfo.getRemainingWaypoints()
بازگردانده می شود.هنگامی که ETA در اولین نقطه در لیست تغییر می کند ، تمام ETA های Waypoint را به روز کنید.
Autocamera را دوباره فعال کنید که راننده به وانت وارد شود. پیش از این ، Autocamera برای هر تغییر وضعیت سفر ، مجدداً تنظیم می شود. Autocamera هنوز هم به طور پیش فرض فعال است. اگر یک سفر فعال جدید بدون تماس تازه برای
startTripMonitoring()
تنظیم شود ، Autocamera دوباره امکان پذیر نخواهد بود.
V0.6.1 (26 ژوئن 2019)
ویژگی های جدید
- پشتیبانی کارپول برای اشتراک گذاری سفر.
API تغییر می کند
ConsumerController.getConsumerMapStyle()
اکنونConsumerMapStyle
به جایTask<ConsumerMapStyle>
باز می گرداند.اضافه شده
PolylineStyle.setZIndex()
.
رفع اشکال
انیمیشن مسیر اکنون فقط زمانی اتفاق می افتد که بخش مسیر همگام باشد و در نتیجه تجربه کاربر بهبود یافته باشد.
وسیله نقلیه ثابت "سوسو زدن" در هنگام درون یابی انیمیشن هنگامی که به روزرسانی مکان درایور به هم نزدیک است.
رفع اشکال در جایی که وسیله نقلیه به جای شروع به روزرسانی خود در هنگام شروع نظارت بر سفر در وسط یک سفر فعال ، در راس مسیر شروع می شود.
هنگام همپوشانی ، پلی خط مسیر فعال را در بالای مسیر باقی مانده نمایش دهید.
پیشرفت
- اکنون کلاس
Status
GRPC را با روش های بدون رحم در معرض دید قرار دهید.
v0.5.1.01 (17 مه 2019)
ویژگی های جدید
- پشتیبانی از پشت به عقب برای اشتراک گذاری سفر.
API تغییر می کند
- کلاس جدید
ConsumerController
.
نوع
ارزش قدیمی | ارزش جدید |
---|---|
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 |
بازپرداخت
ارزش قدیمی | ارزش جدید |
---|---|
onTripRouteUpdated | onTripActiveRouteUpdated |
onTripRemainingDistanceUpdated | onTripActiveRouteRemainingDistanceUpdated |
onTripRemainingWaypointsUpdated() |
کنترل کننده
- اکنون می توانید بدون ورود به ایالت ، تماس های تماس با ایالات را تنظیم کنید.
روش | پاسخ به تماس |
---|---|
startPickupSelection | setPickupSelectionCallback |
startDropoffSelection | setDropoffSelectionCallback |
startTripPreview | setTripPreviewSelectionCallback |
-
ConsumerController.setLanguage(String languageCode)
به شما امکان می دهد زبان مورد استفاده در تماس های FleetEngine را تنظیم کنید (به عنوان مثال برای توضیحات نقطه وانت).
پیشرفت
- حالت انتخاب Dropoff اکنون یک پین قابل کشیدن دارد.
- انیمیشن دوربین را در حالت
INITIALIZE
حذف کرد. -
ManagedChannelBuilder
باAndroidChannelBuilder
جایگزین کرد.
این بخش شامل یادداشت های انتشار برای SDK مصرف کننده برای Android است.
2.3.0 (2 اوت 2024)
API تغییر می کند
پشتیبانی از یک ظاهر طراحی شده نقشه های مبتنی بر ابر را اضافه کنید ، که به شما امکان می دهد یک تجربه نقشه راه سفارشی را برای کاربران خود ایجاد کنید بدون اینکه هر بار که یک تغییر سبک نقشه را به روز کنید ، کد برنامه های خود را به روز کنید. برای اطلاعات بیشتر ، به سبک نقشه با یک ظاهر طراحی شده با نقشه های ابر مراجعه کنید.
روش
getServerTimeMillis()
را بهVehicleLocation
اختصاص دهید تا زمان دریافت به روزرسانی موقعیت توسط موتور ناوگان را تعیین کنید.
2.2.0 (7 مه 2024)
API تغییر می کند
- API پشتیبانی اضافه شده برای ادغام JetPack. این یک ویژگی آزمایشی است. برای جزئیات بیشتر در مورد ادغام با آهنگسازی JetPack ، به نماینده خود دسترسی پیدا کنید.
2.1.0 (17 ژانویه 2024)
رفع اشکال
- تصادف را که هنگام شروع SDK بیش از یک بار در طول چرخه عمر برنامه انجام می شود ، رفع می کند.
API تغییر می کند
- روش بازیابی نمونه
GoogleMap
ایجاد شده توسط SDK (ConsumerGoogleMap.getGoogleMap()
) را معرفی می کند. - API را برای بازیابی نمونه های
Marker
ایجاد شده توسط SDK برای نمایندگی وسیله نقلیه معرفی می کند (ConsumerController.getConsumerMarker()
). - API را برای دریافت به روزرسانی های پیش بینی شده مشتری برای زمان و مسافت در طول سفر به اشتراک می گذارد (
ProjectedRouteEta
).
1.99.2 (3 نوامبر 2023)
تصادف را که هنگام شروع SDK از یک فرآیند از راه دور ، جدا از برنامه ، برطرف می شود.
تصادف را که هنگام اجرای یک انیمیشن دوربین رخ می دهد ، رفع می کند و فضای عمودی یا افقی کافی برای بالشتک وجود ندارد. این تنها در آخرین نقشه ها ارائه می شود.
رفع اشکالی که باعث می شود اولین مرحله از یک سفر برگشت به عقب هنگامی که مرحله دوم از همان جاده عبور می کند ، از بین برود.
مسائل
- در صورت فراخوانی یک نمونه API در حال حاضر ،
ConsumerApi.initialize()
استثنائی را به وجود می آورد. برای کار در این زمینه ، ابتدا باConsumerApi.getInstance()
تماس بگیرید وTask
برگشتی را ارزیابی کنید تا مشخص کنید آیا یک نمونه API در حال حاضر وجود دارد یا خیر.
2.0.0 (15 سپتامبر 2023)
اعلام: شکستن تغییرات
حداقل نیاز به سطح API از 21 تا 23 به روز می شود.
به روزرسانی نقشه های نسخه SDK از V17.0.0 تا V18.1.0
حداقل نسخه کتابخانه استاندارد Kotlin استاندارد از V1.6.10 تا V1.9.0 به روز می شود
نسخه های وابستگی خدمات Google Play را به روز کنید
حداقل نیاز به نسخه کتابخانه-پایه بازی-سرویس از V18.0.1 تا V18.2.0 به روز می شود
حداقل نسخه کتابخانه با خدمات پخش-از V18.0.0 تا V18.2.0 به روز می شود
حداقل نسخه کتابخانه با مکان بازی-نیاز به نسخه کتابخانه از V17.0.0 تا V21.0.1 به روز می شود
حداقل نسخه کتابخانه بازی-سرویس های کار کتابخانه از V18.0.1 تا V18.0.2 به روز می شود
Androidx.room:ROOM:ROOM-RUNTIME با حداقل نسخه مورد نیاز نسخه V2.5.2 را اضافه می کند
نسخه های وابستگی زیر را به روز کنید
حداقل مورد نیاز نسخه کتابخانه Android-Maps-UTILS از V0.4.2 تا v3.5.2 به روز می شود
حداقل com.google.android.datatransport: مورد نیاز نسخه حمل و نقل-CCT از v3.0.0 به v3.1.9 به روز می شود
حداقل com.google.android.datatransport: مورد نیاز نسخه حمل و نقل از v3.0.1 به v3.1.9 به روز می شود
حداقل Androidx.Lifecycle: نیاز به نسخه Expensionsives از V2.0 به V2.2.0 به روز می شود
حداقل Androidx.Lifecycle: نیاز به نسخه Lifecycle-Common-Java8 از v2.0.0 به v2.6.1 به روز می شود
حداقل Androidx.AppCompat: نیاز به نسخه AppCompat از v1.0.0 به v1.6.1 به روز می شود
حداقل androidx.fragment: نیاز به نسخه قطعه از v1.0.0 تا v1.6.1 به روز می شود
API های قبلی را که قبلاً مستهلک شده بودند حذف می کند:
ConsumerTrip
،ConsumerTripCallback
،ConsumerTripManager
،ConsumerTripOptions
. آنها جایگزینTripModel
،TripModelCallback
،TripModelManager
وTripModelOptions
شدند.برنامه هایی که از SDK مصرف کننده استفاده می کنند ، اکنون باید
targetSdkVersion
از API 31 یا بیشتر ،compileSdkVersion
API 33 یا بیشتر داشته باشند.برنامه هایی که از SDK مصرف کننده استفاده می کنند ، اکنون باید پشتیبانی کتابخانه Java 8 را فعال کنند. برای دستورالعمل به روزرسانی به https://developer.android.com/studio/write/java8-support مراجعه کنید.
برنامه هایی که از Proguard یا DexGuard استفاده می کنند باید به R8 مهاجرت کنند. برای اطلاعات بیشتر به https://developer.android.com/build/shrink-code مراجعه کنید.
برنامه هایی که از SDK مصرف کننده استفاده می کنند باید دفع کننده را فعال کنند. برای دستورالعمل به https://developer.android.com/studio/write/java8-support#library-desugaring مراجعه کنید.
روش
ConsumerApi.initialize()
در صورت وجود یک نمونه API که قبلاً ایجاد شده است ، استثنائی را به وجود می آورد.Task
برگشتی توسطConsumerApi.getInstance()
باید استفاده شود تا مشخص شود که آیا یک نمونه API از قبل ایجاد شده است.
اعلام: استهلاک API
کلاسهای حاشیه نویسی
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 Renderer را پشتیبانی می کند. برای جزئیات بیشتر به نقشه جدید مراجعه کنید.
نقشه های SDK را از نسخه های V18.1.0 (شامل) به نسخه های V19.0.0 (اختصاصی) ارائه می دهد.
رفع خطای "مهلت بیش از" برای ارتباطات داخلی بین SDK و Backend 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
از بین برود.
اعلامیه: پشتیبانی انجماد از Android 5 (25 ژوئیه 2022)
برای نسخه V1.1.1 SDK ما ، ما یک سال پشتیبانی اضافی را برای برنامه هایی که در Android 5 اجرا می شوند ، برای هر دو سطح API 21 و 22 ارائه می دهیم.
این یعنی چی:
مصرف کننده SDK که در برنامه های Android شما اجرا می شود ، تا 30 ژوئن 2023 از حداقل اندرویدی 5 (سطح API 21) پشتیبانی می کند.
پس از 30 ژوئن 2023 ، ما فقط از سطح 23 و بالاتر API اندرویدی پشتیبانی خواهیم کرد. به عبارت دیگر ، ما پس از آن تاریخ از پشتیبانی از سطح API API 21 و 22 در تمام نسخه های SDK متوقف خواهیم شد. این بدان معنی است که اشکالات مربوط به Android 21 یا 22 در هر نسخه SDK (از جمله 4.x) برطرف نمی شود و ما تضمین نمی کنیم که SDK ها به درستی رفتار کنند.
v1.1.1 (25 ژوئیه 2022)
تغییر وابستگی
- حداقل سطح API اندرویدی پشتیبانی شده را به 21 کاهش می دهد.
v1.1.0 (28 آوریل 2022)
- پیشرفت های داخلی
v1.0.19 (17 مارس 2022)
رفع اشکال
- رفع یک نشت حافظه در کلاس
ConsumerApi
.
V1.0.14 (30 نوامبر 2021)
در حال حاضر حداقل سطح API Android پشتیبانی شده اکنون 23 است.
API تغییر می کند
تغییر در کلاس های
ConsumerTrip
وConsumerTripManager
.- برخی از نامها را تمیز کنید تا معنی آنها واضح تر شود و با سکوی iOS هماهنگ شود.
تغییر در
ConsumerTripCallback
،ConsumerTrip
وTripInfo
.برخی از نام های کلاس را تغییر داد تا برابری با iOS ایجاد شود. معرفی شده
TripModel
،TirpModelManager
وTripModelOptions
برای کاهشConsumerTrip
،ConsumerTripManager
وConsumerTripOptions
.برخی از نام های روش را تمیز کرد. نظرات javadoc اصلاح شده یا اضافه شده به روش های انتقال معانی واضح تر.
رسیدگی به خطای بهبود یافته.
سفارشی سازی یک ظاهر طراحی شده
بسته های میراث مستهلک
-
MarkerStyleOptions
وPolylineStyleOptions
مستهلک شد و توسطMarkerOptions
وPolylineOptions
جایگزین شد ، که هر دو با نقشه SDK به اشتراک گذاشته می شوند.
-
نظارت
تشخیص و ورود به سیستم تصادف اضافه شد.
- علاوه بر این ساخته شده است تا به شما امکان دهد از این عملکرد خودداری کنید. این کار به عنوان بخشی از یک تلاش بزرگتر در سطح جغرافیایی برای نظارت بر تصادف انجام شد.
تغییر احراز هویت
- روشهای غیر ضروری را از رابط های احراز هویت حذف کنید.
- پارامتر
ServiceType
را حذف کرد.
- پارامتر
v0.9.28 (18 مه 2021)
API تغییر می کند
- تمام روشهای
ConsumerTripCallback
را برای استفاده ازTripInfo
به عنوان پارامتر به روز کرد. - اضافه شده
ConsumerTrip.isRefreshing()
، که نشان می دهد آیاConsumerTrip
به طور فعال خود را با اطلاعات سفر تازه از موتور ناوگان به روز می کند یا خیر. - اضافه شده
ConsumerTripCallback.onTripRemainingRouteDistanceUpdated()
. - اضافه شده
ConsumerTripCallback.onTripRemainingRouteUpdated()
. - انواع بازگشت Guava (
ImmutableSet
،ImmutableList
) را با کلاسهای معادلjava.util
جایگزین کنید. نام بسته تغییر می کند:
- com.google.android.libraries.ridesharing.common.authtokencontext -> com.google.android.libraries.ridesharing.consumer.auth.authtokencontextextext
- 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.consumer.auth.fleetengineservicetype - com.google.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
نیست. - رفع اشکال با ترافیک ترافیک در دستگاه های خاص. بخش های ترافیک اکنون به پایان رسیده اند.
v0.9.15 (7 اکتبر 2020)
API تغییر می کند
- در این نسخه ، پولیلین های آگاه از ترافیک معرفی می شود. - اضافه شده
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()
دیگر به عنوان یک استدلال تهی نمی کند.
-
v0.9.9 (15 ژوئیه 2020)
API تغییر می کند
- این یک تغییر اساسی است که یک معماری مدولار را با یک رابطه واضح تر بین لایه فقط داده (به عنوان مثال ،
ConsumerTripManager
) و لایه رابط کاربری (به عنوان مثال ،JourneySharingSession
) معرفی می کند. برای اطلاعات در مورد مهاجرت به معماری جدید ، به راهنمای مهاجرت مدولار سازی مراجعه کنید. - شیءConsumerTrip
اکنون ازConsumerTripManager.getTrip()
به دست می آید.-
ConsumerTrip.unregisterCallback
بهConsumerTrip.unregisterTripCallback
تغییر نام داده است. -
ConsumerTrip.isCallbackRegistered
بهConsumerTrip.isTripCallbackRegistered
تغییر نام داده است. - اضافه شده
ConsumerTrip.setConsumerTripOptions()
وConsumerTrip.getConsumerTripOptions()
. - حذف
ConsumerTrip.setAutoRefreshInterval()
.
-
- API های اشتراک گذاری غیر جین را حذف کرد.
- نقشه چگالی وسیله نقلیه برداشته شده است.
- حالت پیش نمایش سفر را حذف کرد.
- حالت انتخاب وانت را حذف کرد.
- حذف حالت انتخاب قطره.
- انواع نشانگر زیر را حذف کنید:
SELECTED_PICKUP_POINT
،SUGGESTED_PICKUP_POINT
،HIGHLIGHTED_PICKUP_POINT
وSELECTED_DROPOFF_POINT
.
- تغییر
OnConsumerMarkerClickCallback
وConsumerMapReadyCallback
از رابط ها به کلاس های انتزاعی. - اضافه شده
ConsumerController.getCameraUpdate()
،ConsumerController.isAutoCameraEnabled()
، وConsumerController.enableAutoCamera()
. - FAB سفارشی و روشهای مرتبط با آن را حذف کرد (
ConsumerController.isMyLocationFabEnabled
وConsumerController.setMyLocationFabEnabled
).
تغییرات اجرای
- یک
ConsumerTripCallback
، چه درLifecycleOwner
ثبت شده یا بدون آن ، دیگر به طور خودکار درTripStatus.COMPLETE
یاTripStatus.CANCELED
ثبت نام نکنید. - Autocamera اکنون به طور پیش فرض فعال شده است و هرگز خود را مجدداً قابل استفاده نمی کند. پیش از این ، AutoCamera به طور خودکار در
TripStatus.ARRIVED_AT_PICKUP
امکان پذیر بود. 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
v0.9.1 (23 مارس 2020)
API تغییر می کند
- اضافه شده
TripInfo.getVehicleId()
،TripInfo.getNumberOfPassengers()
،TripInfo.getIntermediateDestinationIndex()
،TripInfo.getTripActiveRoute()
وTripInfo.getTripRemainingRoute()
. - کلاس
options
اضافه شده در هنگام اولیه سازیConsumerApi
استفاده می شود که به آدرسFleetEngine
اجازه می دهد تا به صورت پویا تنظیم شود. اگر API با مقدارFleetEngine
فراخوانده نشود ، سعی می کند آن را از مانیفست اندروید واکشی کند یا در غیر این صورت به مقدار پیش فرض بازگردد.
پیشرفت
- با رسیدن وضعیت
ARRIVED_AT_PICKUP
پلی خط مسیر نمایش داده نمی شود. - ردیابی وسیله نقلیه خارج از مسیر بهبود یافته است (به DriverDK 1.15 نیاز دارد):
- ردیابی وسیله نقلیه وقتی وسیله نقلیه از نقطه وانت عبور می کند ، وسیله نقلیه را به مسیر نمی دهد.
- ردیابی وسیله نقلیه نمایش وسیله نقلیه خارج از جاده را امکان پذیر می کند. به عنوان مثال ، در پارکینگ های غیرمجاز.
- نماد وسیله نقلیه اکنون به روز می شود که مقصد راننده با مقصد موتور ناوگان مطابقت نداشته باشد.
V0.8.6 (16 دسامبر 2019)
API تغییر می کند
اضافه شده
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 مصرف کننده برای کشتی های اندرویدی به عنوان بایگانی Zip Jetified. برای کسب اطلاعات در مورد نحوه جداسازی آن ، به Jetifier: Mode Reverse مراجعه کنید.
V0.8.1 (13 سپتامبر 2019)
ویژگی های جدید
پشتیبانی از ConsumerMapview .
مصنوعات ODRD اکنون به جای یک Zipfile .AAR در یک مخزن Maven حمل می شوند. برای اطلاعات بیشتر ، به اضافه کردن SDK Consumer به برنامه خود مراجعه کنید.
API تغییر می کند
اضافه شده
ConsumerController.disableAutoCamera()
به عنوان عملکرد مخالفcenterMapForState()
.VehicleLocation.getUpdateTime()
اکنون مدت طولانی را نشان می دهد که نشان دهنده زمان بندی (در میلی ثانیه) است.رابط
AuthTokenFactory
را برای افشای یک روش واحد برای تولید توکن ساده کرد.AuthTokenFactory
از یک رابط به یک کلاس انتزاعی تغییر داد تا سازگاری به عقب در Java7 امکان پذیر شود. این تغییر سازگار با عقب است ، اما روشهای قدیمی برای نسل توکن تک سرویس مستهلک می شوند و در نهایت حذف می شوند.
تغییرات اجرای
دارایی که اکنون در مرکز نماد قرار دارد و جبران سایه را از بین می برد.
به جای انتظار برای وضعیت نظارتی سفر ،
setState
toJOURNEY_SHARING onStartTripMonitoring()
.همیشه داده ها را برای به روزرسانی داده های سفر اول باز می گرداند ، حتی اگر داده های سفر از همگام سازی خارج شوند.
استفاده از نقشه های اندرویدی به عنوان وابستگی ارائه شده اضافه شده است.
رفع اشکال
- ثابت نحو صادرات شکسته شکسته برای نگه داشتن GRPC.
V0.7.0 (7 اوت 2019)
ویژگی های جدید
- پشتیبانی چند مرحله ای برای اشتراک گذاری سفر.
API تغییر می کند
روشهای جدید برای
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 قبلاً داده های سفر را بدست آورده است ، فراخوانی نشده است.
بزرگنمایی دوربین اکنون فقط شامل مسیر فعال و مسیر سفر بعدی (ایستگاه راه که متعلق به سفر است) است. حتی اگر پای باقی مانده قابل مشاهده باشد ، زوم هرگز آن را شامل نمی شود. پیش از این ، هنگامی که وسیله نقلیه یا به وانت می رسید ، یا به وانت رسید ، نقطه کشویی در بزرگنمایی گنجانده شده بود. این دیگر درست نیست.
پیشرفت
نقطه راه باقی مانده Zeroth را با داده های درایور جمع کنید (لیست Waypoint باقیمانده از
ConsumerTripCallback.onTripRemainingWaypointsUpdated
وTripInfo.getRemainingWaypoints()
بازگردانده می شود.هنگامی که ETA در اولین نقطه در لیست تغییر می کند ، تمام ETA های Waypoint را به روز کنید.
Autocamera را دوباره فعال کنید که راننده به وانت وارد شود. پیش از این ، Autocamera برای هر تغییر وضعیت سفر ، مجدداً تنظیم می شود. Autocamera هنوز هم به طور پیش فرض فعال است. اگر یک سفر فعال جدید بدون تماس تازه برای
startTripMonitoring()
تنظیم شود ، Autocamera دوباره امکان پذیر نخواهد بود.
V0.6.1 (26 ژوئن 2019)
ویژگی های جدید
- پشتیبانی کارپول برای اشتراک گذاری سفر.
API تغییر می کند
ConsumerController.getConsumerMapStyle()
اکنونConsumerMapStyle
به جایTask<ConsumerMapStyle>
باز می گرداند.اضافه شده
PolylineStyle.setZIndex()
.
رفع اشکال
انیمیشن مسیر اکنون فقط زمانی اتفاق می افتد که بخش مسیر همگام باشد و در نتیجه تجربه کاربر بهبود یافته باشد.
وسیله نقلیه ثابت "سوسو زدن" در هنگام درون یابی انیمیشن هنگامی که به روزرسانی مکان درایور به هم نزدیک است.
رفع اشکال در جایی که وسیله نقلیه به جای شروع به روزرسانی خود در هنگام شروع نظارت بر سفر در وسط یک سفر فعال ، در راس مسیر شروع می شود.
هنگام همپوشانی ، پلی خط مسیر فعال را در بالای مسیر باقی مانده نمایش دهید.
پیشرفت
- اکنون کلاس
Status
GRPC را با روش های بدون رحم در معرض دید قرار دهید.
v0.5.1.01 (17 مه 2019)
ویژگی های جدید
- پشتیبانی از پشت به عقب برای اشتراک گذاری سفر.
API تغییر می کند
- کلاس جدید
ConsumerController
.
نوع
ارزش قدیمی | ارزش جدید |
---|---|
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 |
بازپرداخت
ارزش قدیمی | ارزش جدید |
---|---|
onTripRouteUpdated | onTripActiveRouteUpdated |
onTripRemainingDistanceUpdated | onTripActiveRouteRemainingDistanceUpdated |
onTripRemainingWaypointsUpdated() |
کنترل کننده
- اکنون می توانید بدون ورود به ایالت ، تماس های تماس با ایالات را تنظیم کنید.
روش | پاسخ به تماس |
---|---|
startPickupSelection | setPickupSelectionCallback |
startDropoffSelection | setDropoffSelectionCallback |
startTripPreview | setTripPreviewSelectionCallback |
-
ConsumerController.setLanguage(String languageCode)
به شما امکان می دهد زبان مورد استفاده در تماس های FleetEngine را تنظیم کنید (به عنوان مثال برای توضیحات نقطه وانت).
پیشرفت
- حالت انتخاب Dropoff اکنون یک پین قابل کشیدن دارد.
- انیمیشن دوربین را در حالت
INITIALIZE
حذف کرد. -
ManagedChannelBuilder
باAndroidChannelBuilder
جایگزین کرد.
این بخش شامل یادداشت های انتشار برای SDK مصرف کننده برای Android است.
2.3.0 (2 اوت 2024)
API تغییر می کند
پشتیبانی از یک ظاهر طراحی شده نقشه های مبتنی بر ابر را اضافه کنید ، که به شما امکان می دهد یک تجربه نقشه راه سفارشی را برای کاربران خود ایجاد کنید بدون اینکه هر بار که یک تغییر سبک نقشه را به روز کنید ، کد برنامه های خود را به روز کنید. برای اطلاعات بیشتر ، به سبک نقشه با یک ظاهر طراحی شده با نقشه های ابر مراجعه کنید.
روش
getServerTimeMillis()
را بهVehicleLocation
اختصاص دهید تا زمان دریافت به روزرسانی موقعیت توسط موتور ناوگان را تعیین کنید.
2.2.0 (7 مه 2024)
API تغییر می کند
- API پشتیبانی اضافه شده برای ادغام JetPack. این یک ویژگی آزمایشی است. برای جزئیات بیشتر در مورد ادغام با آهنگسازی JetPack ، به نماینده خود دسترسی پیدا کنید.
2.1.0 (17 ژانویه 2024)
رفع اشکال
- تصادف را که هنگام شروع SDK بیش از یک بار در طول چرخه عمر برنامه انجام می شود ، رفع می کند.
API تغییر می کند
- روش بازیابی نمونه
GoogleMap
ایجاد شده توسط SDK (ConsumerGoogleMap.getGoogleMap()
) را معرفی می کند. - API را برای بازیابی نمونه های
Marker
ایجاد شده توسط SDK برای نمایندگی وسیله نقلیه معرفی می کند (ConsumerController.getConsumerMarker()
). - API را برای دریافت به روزرسانی های پیش بینی شده مشتری برای زمان و مسافت در طول سفر به اشتراک می گذارد (
ProjectedRouteEta
).
1.99.2 (3 نوامبر 2023)
تصادف را که هنگام شروع SDK از یک فرآیند از راه دور ، جدا از برنامه ، برطرف می شود.
تصادف را که هنگام اجرای یک انیمیشن دوربین رخ می دهد ، رفع می کند و فضای عمودی یا افقی کافی برای بالشتک وجود ندارد. این تنها در آخرین نقشه ها ارائه می شود.
رفع اشکالی که باعث می شود اولین مرحله از یک سفر برگشت به عقب هنگامی که مرحله دوم از همان جاده عبور می کند ، از بین برود.
مسائل
- در صورت فراخوانی یک نمونه API در حال حاضر ،
ConsumerApi.initialize()
استثنائی را به وجود می آورد. برای کار در این زمینه ، ابتدا باConsumerApi.getInstance()
تماس بگیرید وTask
برگشتی را ارزیابی کنید تا مشخص کنید آیا یک نمونه API در حال حاضر وجود دارد یا خیر.
2.0.0 (15 سپتامبر 2023)
اعلام: شکستن تغییرات
حداقل نیاز به سطح API از 21 تا 23 به روز می شود.
به روزرسانی نقشه های نسخه SDK از V17.0.0 تا V18.1.0
حداقل نسخه کتابخانه استاندارد Kotlin استاندارد از V1.6.10 تا V1.9.0 به روز می شود
نسخه های وابستگی خدمات Google Play را به روز کنید
حداقل نیاز به نسخه کتابخانه-پایه بازی-سرویس از V18.0.1 تا V18.2.0 به روز می شود
حداقل نسخه کتابخانه با خدمات پخش-از V18.0.0 تا V18.2.0 به روز می شود
حداقل نسخه کتابخانه با مکان بازی-نیاز به نسخه کتابخانه از V17.0.0 تا V21.0.1 به روز می شود
حداقل نسخه کتابخانه بازی-سرویس های کار کتابخانه از V18.0.1 تا V18.0.2 به روز می شود
Androidx.room:ROOM:ROOM-RUNTIME با حداقل نسخه مورد نیاز نسخه V2.5.2 را اضافه می کند
نسخه های وابستگی زیر را به روز کنید
حداقل مورد نیاز نسخه کتابخانه Android-Maps-UTILS از V0.4.2 تا v3.5.2 به روز می شود
حداقل com.google.android.datatransport: مورد نیاز نسخه حمل و نقل-CCT از v3.0.0 به v3.1.9 به روز می شود
حداقل com.google.android.datatransport: مورد نیاز نسخه حمل و نقل از v3.0.1 به v3.1.9 به روز می شود
حداقل Androidx.Lifecycle: نیاز به نسخه Expensionsives از V2.0 به V2.2.0 به روز می شود
حداقل Androidx.Lifecycle: نیاز به نسخه Lifecycle-Common-Java8 از v2.0.0 به v2.6.1 به روز می شود
حداقل Androidx.AppCompat: نیاز به نسخه AppCompat از v1.0.0 به v1.6.1 به روز می شود
حداقل androidx.fragment: نیاز به نسخه قطعه از v1.0.0 تا v1.6.1 به روز می شود
API های قبلی را که قبلاً مستهلک شده بودند حذف می کند:
ConsumerTrip
،ConsumerTripCallback
،ConsumerTripManager
،ConsumerTripOptions
. آنها جایگزینTripModel
،TripModelCallback
،TripModelManager
وTripModelOptions
شدند.برنامه هایی که از SDK مصرف کننده استفاده می کنند ، اکنون باید
targetSdkVersion
از API 31 یا بیشتر ،compileSdkVersion
API 33 یا بیشتر داشته باشند.برنامه هایی که از SDK مصرف کننده استفاده می کنند ، اکنون باید پشتیبانی کتابخانه Java 8 را فعال کنند. برای دستورالعمل به روزرسانی به https://developer.android.com/studio/write/java8-support مراجعه کنید.
برنامه هایی که از Proguard یا DexGuard استفاده می کنند باید به R8 مهاجرت کنند. برای اطلاعات بیشتر به https://developer.android.com/build/shrink-code مراجعه کنید.
برنامه هایی که از SDK مصرف کننده استفاده می کنند باید دفع کننده را فعال کنند. See https://developer.android.com/studio/write/java8-support#library-desugaring for instructions.
The
ConsumerApi.initialize()
method now throws an exception if it's being invoked when there is an API instance already created. TheTask
returned byConsumerApi.getInstance()
must be used to determine if there's an API instance created beforehand.
Announcement: API deprecations
Deprecates
Trip.TripStatus
andTrip.TripType
annotation classes, addsTripInfo.TripStatus
andTripInfo.TripType
annotation classes to replace them.As part of to this change,
TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status)
is deprecated andTripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status)
is added to replace it.As part of to this change,
TripInfo#getTripStatus()
is deprecated,TripInfo#getCurrentTripStatus()
is added to replace it.As part of to this change,
TripInfo#getTripType()
is deprecated,TripInfo#getCurrentTripType()
is added to replace it.
Deprecates
Trip
class.
Other Changes and bug fixes
Supports requesting the latest Maps SDK renderer. See New Map Renderer for details.
Provides Maps SDK range support from v18.1.0(inclusive) to v19.0.0(exclusive) versions.
Fixes "deadline exceeded" error for internal communications between SDK and Google backend.
Fixes rendering issue for small size screen and picture-in-picture mode.
Migration guide
1.99.1 (August 31, 2023)
رفع اشکال
Fixes crash that occurs when the SDK host activity or fragment is destroyed.
Fixes crash that occurs when the dimensions of the MapView are 0 (either height or width).
Fixes crash that occurs when projecting the vehicle location on the route polyline.
Improvements
- Prevents the SDK from crashing when the host application is sideloaded, and the default visual resources aren't present.
1.99.0 (June 22, 2023)
رفع اشکال
Fixes rendering issue for small-size screen and for picture-in-picture mode.
Fixes vehicle flickers during journey sharing.
1.2.1 (June 7, 2023)
رفع اشکال
- Fixes a bug that causes the vehicle to flicker during journey sharing.
1.2.0 (November 21, 2022)
رفع اشکال
- Fixes bug that caused empty traffic to be reported in the
onTripActiveRouteTrafficUpdated
callback.
ویژگی های جدید
- "Traffic-aware polylines" is now generally available.
1.1.2 (October 27, 2022)
رفع اشکال
- Addresses bug that cause the route polyline to disappear after a
JourneySharingSession
is started more than once for aTripModel
.
Announcement: Freezing support for Android 5 (July 25, 2022)
For our v1.1.1 SDK version, we are providing an additional year of support for apps running on Android 5, for both API levels 21 and 22.
این یعنی چی:
Consumer SDK running on your Android apps will support a minimum Android 5 (API level 21) until June 30, 2023.
After June 30, 2023, we will support only Android API levels 23 and above. In other words, we will stop supporting Android API levels 21 and 22 across all SDK versions after that date. This means that bugs related to Android 21 or 22 in any SDK version (including 4.x) will not be fixed, and we do not guarantee that the SDKs will behave correctly.
v1.1.1 (July 25, 2022)
Dependency change
- Downgrades the minimum supported Android API level to 21.
v1.1.0 (April 28, 2022)
- Internal improvements.
v1.0.19 (March 17, 2022)
رفع اشکال
- Fixed a memory leak in the
ConsumerApi
class.
v1.0.14 (November 30, 2021)
The minimum supported Android API level is now 23.
API changes
Changes to the
ConsumerTrip
andConsumerTripManager
classes.- Cleaned up some method names to make their meaning clearer, and to align with the iOS platform.
Changes to
ConsumerTripCallback
,ConsumerTrip
andTripInfo
.Changed some class names to form parity with iOS. Introduced
TripModel
,TirpModelManager
, andTripModelOptions
to deprecateConsumerTrip
,ConsumerTripManager
andConsumerTripOptions
.Cleaned up some method names. Revised or added JavaDoc comments to methods to convey clearer meanings.
Improved error handling.
Styling customization
Deprecated legacy wrappers
-
MarkerStyleOptions
andPolylineStyleOptions
were deprecated and replaced byMarkerOptions
andPolylineOptions
, which are both shared with the Maps SDK.
-
Crash monitoring
Added crash detection and logging.
- An addition was made to allow you to opt out of this functionality. This was done as a part of a larger Geo-wide effort for crash monitoring.
Authentication changes
- Remove unnecessary methods from the Authentication interfaces.
- Removed the
ServiceType
parameter.
- Removed the
v0.9.28 (May 18, 2021)
API changes
- Updated all
ConsumerTripCallback
methods to useTripInfo
as the parameter. - Added
ConsumerTrip.isRefreshing()
, which indicates whetherConsumerTrip
is actively updating itself with fresh trip information from Fleet Engine. - Added
ConsumerTripCallback.onTripRemainingRouteDistanceUpdated()
. - Added
ConsumerTripCallback.onTripRemainingRouteUpdated()
. - Replace Guava return types (
ImmutableSet
,ImmutableList
) withjava.util
equivalent classes. Package name changes:
- 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
Implementation changes
- Fixed a race condition where the SDK could crash from interactions with the map before it is ready.
- The SDK no longer contains an unobfuscated copy of
io.grpc
. - Fixed a bug with flickering traffic polylines on certain devices. Traffic segments will now have rounded ends.
v0.9.15 (October 7, 2020)
API changes
- This release introduces Traffic Aware Polylines . - Added
TripInfo.getActiveRouteTraffic()
andTripInfo.getRemainingRouteTraffic()
.- Added
ConsumerTripCallback.onTripActiveRouteTrafficUpdated()
andConsumerTripCallback.onTripRemainingRouteTrafficUpdated()
to indicate when traffic has changed. - Added
PolylineStyleOptions
for traffic customization (setTrafficEnabled()
,setTrafficColorNoData()
,setTrafficColorNormal()
,setTrafficColorSlow()
,setTrafficColorTrafficJam()
). - Exposed
PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITION
. - Added
TripWaypoint.getTrafficData()
. - Added
TrafficData
data type. - Added
ConsumerController.hideAllSessions()
.ConsumerController.showSession()
no longer accepts null as an argument.
- Added
v0.9.9 (July 15, 2020)
API changes
- This is a major change that introduces a modularized architecture with a clearer relationship between the data-only layer (for example,
ConsumerTripManager
) and the user interface layer (for example,JourneySharingSession
). For information on migrating to the new architecture, see the Modularization Migration Guide . - TheConsumerTrip
object is now obtained fromConsumerTripManager.getTrip()
.-
ConsumerTrip.unregisterCallback
has been renamed toConsumerTrip.unregisterTripCallback
. -
ConsumerTrip.isCallbackRegistered
has been renamed toConsumerTrip.isTripCallbackRegistered
. - Added
ConsumerTrip.setConsumerTripOptions()
andConsumerTrip.getConsumerTripOptions()
. - Removed
ConsumerTrip.setAutoRefreshInterval()
.
-
- Removed non-journey sharing APIs.
- Removed vehicle density map.
- Removed trip preview state.
- Removed pickup selection state.
- Removed dropoff selection state.
- Removed the following marker types:
SELECTED_PICKUP_POINT
,SUGGESTED_PICKUP_POINT
,HIGHLIGHTED_PICKUP_POINT
, andSELECTED_DROPOFF_POINT
.
- Changed
OnConsumerMarkerClickCallback
andConsumerMapReadyCallback
from interfaces to abstract classes. - Added
ConsumerController.getCameraUpdate()
,ConsumerController.isAutoCameraEnabled()
, andConsumerController.enableAutoCamera()
. - Removed the custom FAB and its associated methods (
ConsumerController.isMyLocationFabEnabled
andConsumerController.setMyLocationFabEnabled
).
Implementation changes
- A
ConsumerTripCallback
, whether registered with or without aLifecycleOwner
, no longer automatically unregisters onTripStatus.COMPLETE
orTripStatus.CANCELED
. - AutoCamera is now enabled by default and never reenables or disables itself. Previously, AutoCamera automatically reenabled on
TripStatus.ARRIVED_AT_PICKUP
and disabled itself when the user interacted with the map during journey sharing. - The following improvements have been made to journey sharing vehicle animation:
- Journey sharing animation now handles the situation where a vehicle may legitimately travel back along an already-traversed route.
- The vehicle will now straight-line animate instead of route interpolating between points when it is determined algorithmically to be appropriate.
-
FINE_LOCATION
permissions are no longer required.
تغییرات دیگر
- Updated the following dependency versions:
- 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
v0.9.1 (March 23, 2020)
API changes
- Added
TripInfo.getVehicleId()
,TripInfo.getNumberOfPassengers()
,TripInfo.getIntermediateDestinationIndex()
,TripInfo.getTripActiveRoute()
, andTripInfo.getTripRemainingRoute()
. - Added
options
class used duringConsumerApi
initialization that lets theFleetEngine
address to be dynamically set. If the API is not called with aFleetEngine
value, it attempts to fetch it from the Android manifest or else falls back to the default value.
Improvements
- The route polyline is not displayed when the trip status is
ARRIVED_AT_PICKUP
. - Off-route vehicle tracking has been improved (requires DriverSDK 1.15):
- Vehicle tracking does not snap the vehicle to the route when the vehicle drives past the pickup point.
- Vehicle tracking enables displaying the vehicle off the road; for example, in unmapped parking lots.
- The vehicle icon now updates when the driver's destination does not match the destination in Fleet Engine.
v0.8.6 (December 16, 2019)
API changes
Added
TripInfo.getVehicleLocation()
.ConsumerMapView
is no longer final.
Implementation changes
- The active leg remaining distance is now calculated using server distance (driver reported + static route where applicable) instead of local snapping. This change produces more accurate remaining distance values.
تغییرات دیگر
New dependencies required. See the .pom file for details.
- 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
Added logs for trip request latency.
Added logs for trip response errors.
یادداشت ها
- Since version 0.8.1, the Consumer SDK for Android ships as a jetified zip archive. For information about how to de-jetify it, see Jetifier: Reverse mode .
v0.8.1 (September 13, 2019)
ویژگی های جدید
Support for ConsumerMapView .
ODRD artifacts now ship in a maven repository instead of an .aar zipfile. For more information, see Add the Consumer SDK to your app .
API changes
Added
ConsumerController.disableAutoCamera()
as the opposite function tocenterMapForState()
.VehicleLocation.getUpdateTime()
now returns a Long that represents the timestamp (in milliseconds).Simplified the
AuthTokenFactory
interface to expose a single method for token generation. ChangedAuthTokenFactory
from an interface to an abstract class to enable backwards compatibility in Java7. This change is backward compatible, but the old methods for single service token generation are deprecated, and will eventually be removed.
Implementation changes
Assets now centered to icon center, eliminating shadow offset.
setState
toJOURNEY_SHARING onStartTripMonitoring()
instead of waiting for monitored Trip's status.Always returns data for first trip data update, even when trip data is out of sync.
Added Android Map Utils as a provided dependency.
رفع اشکال
- Fixed broken proguard export syntax for grpc keep.
v0.7.0 (August 7, 2019)
ویژگی های جدید
- Multidestination support for Journey Sharing.
API changes
New methods for
ConsumerTripCallback
.-
onTripIntermediateDestinationsUpdated()
. -
onTripETAToNextTripWaypointUpdated()
.
-
New
ConsumerController
methods.-
getIntermediateDestinations()
. -
setIntermediateDestinations(List<TerminalLocation> intermediateDestinations)
.
-
New
TripStatuses
.-
TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION
. -
TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION
.
-
New
TripWaypoint
getters.-
getETAMillis()
. -
getDistanceMeters()
.
-
Added the
TripInfo
class.- You can obtain
TripInfo
for the active trip withConsumerTripManager.getActiveTripInfo()
.
- You can obtain
Added
WaypointType.INTERMEDIATE_DESTINATION
.Added
MarkerType.TRIP_INTERMEDIATE_DESTINATION
.Created
ConsumerMapState.JOURNEY_SHARING
from mergedConsumerMapStates
ENROUTE_TO_PICKUP
,ARRIVED_AT_PICKUP
,ENROUTE_TO_DROPOFF
, andCOMPLETE
.StateChangeCallbacks
updated.Added
onStateJourneySharing()
.Removed
onStateWaitingForPickup()
,onStateDriverArrived()
,onStateEnroute()
, andonStateEndofTrip()
.
رفع اشکال
Fixed a bug where route is not trimmed to the vehicle location when trip monitoring starts in the middle of an active trip (not at head of route).
Fixed a bug where trip callbacks are not invoked for listeners registered on the Tripmanager after the TripManager has already fetched trip data.
Camera zoom now includes only the active route and the next trip waypoint (waypoint that belongs to the trip). Even if the remaining leg is visible, the zoom will never include it. Previously, the drop-off point was included in the zoom when the vehicle was either enroute to pickup, or arrived at pickup. این دیگر درست نیست.
Improvements
Populate the zeroth remaining waypoint with Driver data (remaining waypoint list is returned from
ConsumerTripCallback.onTripRemainingWaypointsUpdated
andTripInfo.getRemainingWaypoints()
.Update all remaining waypoint ETAs when the ETA to the first waypoint in the list changes.
Force re-enable autocamera only when driver arrives at pickup. Previously, autocamera would reset to enabled for every trip state change. Autocamera is still enabled by default. Autocamera will not re-enable if a new active trip is set without a fresh call to
startTripMonitoring()
.
v0.6.1 (June 26, 2019)
ویژگی های جدید
- Carpool support for journey sharing.
API changes
ConsumerController.getConsumerMapStyle()
now returnsConsumerMapStyle
rather thanTask<ConsumerMapStyle>
.Added
PolylineStyle.setZIndex()
.
رفع اشکال
Route animation now happens only when the route segment is in sync, resulting in an improved user experience.
Fixed vehicle "flickering" during animation interpolation when driver location updates are close together.
Fixed a bug where the vehicle starts at the head of the route instead of at its most updated location when trip monitoring starts in the middle of an active trip.
Display the active route polyline above the remaining route when they overlap.
Improvements
- Now expose the gRPC
Status
class with unobfuscated methods.
v0.5.1.01 (May 17, 2019)
ویژگی های جدید
- Back-to-back support for Journey Sharing.
API changes
- New
ConsumerController
class.
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
- You can now set callbacks for states without entering the state.
روش | پاسخ به تماس |
---|---|
startPickupSelection | setPickupSelectionCallback |
startDropoffSelection | setDropoffSelectionCallback |
startTripPreview | setTripPreviewSelectionCallback |
-
ConsumerController.setLanguage(String languageCode)
allows you to set the language used in FleetEngine calls (for pickup point descriptions, for example).
Improvements
- Dropoff selection state now has a draggable pin.
- Removed camera animation in
INITIALIZE
state. - Replaced
ManagedChannelBuilder
withAndroidChannelBuilder
.