این بخش حاوی یادداشتهای انتشار برای «کیت توسعه نرمافزار مصرفکننده برای Android» است.
اعلامیه: توقف پشتیبانی از سطح API ۲۳، ۲۴، و ۲۵
مطابق با خطمشی پشتیبانی از نسخه سیستمعامل تلفن همراه، در نسخههای اصلی آتی «کیت توسعه نرمافزار مصرفکننده برای Android»، پشتیبانی از Android 6 و 7 (سطح میانای برنامه کاربردی ۲۳، ۲۴، و ۲۵) را متوقف خواهیم کرد.
نسخههای Consumer SDK for Android که از سهماهه چهارم سال ۲۰۲۵ منتشر میشوند، حداقل از Android 8 (سطح میانای برنامهسازی کاربردی ۲۶) پشتیبانی خواهند کرد. نسخههای قدیمیتر کیت توسعه نرمافزار همچنان از Android 6 و 7 پشتیبانی خواهند کرد.
اگر وابستگیهایتان شماره نسخه را مشخص نکنند، «محیط توسعه یکپارچه» شما جدیدترین نسخه کیت توسعه نرمافزار را بار میکند و ساختهای جدید برنامهتان از Android 6 و 7 پشتیبانی نخواهند کرد.
نسخه «کیت توسعه نرمافزار مصرفکننده برای Android» را در وابستگیهای ساخت برنامه مشخص کنید تا بتوانید زمان افزایش حداقل سیستمعامل پشتیبانیشده برای نسخههای جدید برنامهتان را کنترل کنید.
۴.۱.۰ (۲۶ مه ۲۰۲۶)
- بهبودهای داخلی: فضای ذخیرهسازی دادههای داخلی به «ذخیره داده Jetpack» منتقل شد.
تغییرات پیکربندی و وابستگی
- نسخه وابستگی Kotlin به نسخه ۲.۳.۰ ارتقا یافت.
- افزایه Android Gradle به نسخه ۸.۱۳.۲ ارتقا یافت.
- Gradle به نسخه ۸.۱۳ ارتقا یافت.
- کتابخانه Desugar به نسخه ۲.۱.۵ ارتقا یافت.
- «کیت توسعه نرمافزار Maps» به نسخه ۲۰.۰.۰ ارتقا یافت و وابستگیهای «هسته سرویسهای تلفن همراه Google» زیر بهروزرسانی شد:
- play-services-location: 21.3.0
- play-services-tasks: 18.4.1
- play-services-common: 18.1.0
- play-services-basement: 18.1.0
- وابستگیهای Jetpack Datastore اضافه شد (androidx.datastore:datastore-core:1.2.0, androidx.datastore:datastore-guava:1.2.0).
4.0.0 (۳ اکتبر ۲۰۲۵)
- بهبودهای داخلی.
۳.۲.۰ (۲۶ ژوئن ۲۰۲۵)
- بهبود گزارشدهی داخلی.
تغییرات پیکربندی و وابستگی
- از نسخه 3.2.0 کیت توسعه نرمافزار (SDK) مصرفکننده برای Android، برنامهها باید به Kotlin 2.1 ارتقا یابند.
رفع اشکالها
- برای تصمیمگیریهای پویانمایی داخلی، بهجای فاصله هوایی از طول چندخطی استفاده کنید.
۳.۱.۰ (۱۰ مارس ۲۰۲۵)
- بهبودهای گزارشدهی داخلی.
۳.۰.۰ (۶ دسامبر ۲۰۲۴)
تغییرات پیکربندی و وابستگی
- از نسخه ۳.۰.۰ «کیت توسعه نرمافزار مصرفکننده» برای Android، برنامهها باید به Kotlin 2.0 ارتقا دهند. راهنمای انتقال کیت توسعه نرمافزار مصرفکننده Android 3.0 را ببینید.
- targetSdk برای «کیت توسعه نرمافزار مصرفکننده» اکنون Android 14 (سطح میانای برنامهسازی کاربردی ۳۴) است. این امر از اوت ۲۰۲۴ برای همه برنامههایی که در «فروشگاه Google Play» مستقر میشوند الزامی است. به برآورده کردن ملزومات سطح میانای برنامهسازی کاربردی هدف Google Play مراجعه کنید.
۲.۹۹.۰ (۲۵ نوامبر ۲۰۲۴)
رفع اشکالها
- خطای ANR را که وقتی
ConsumerApi.cleanUp()برای اجرا شدن خیلی طول میکشد برطرف میکند. پساز یکپارچه شدن نسخه پخش، این ویژگی بهتدریج (از ۰٪) عرضه خواهد شد. - مشکلی را برطرف میکند که در آن، درایورها خطاهای gRPC با کد «داخلی» و پیام «وحشت! این یک اشکال است!». پساز یکپارچه شدن نسخه پخش، این ویژگی بهتدریج (از ۰٪) عرضه خواهد شد.
۲.۳.۰ (۲ اوت ۲۰۲۴)
تغییرات میانای برنامهسازی کاربردی
پشتیبانی از سبکپردازی نقشه مبتنی بر فضای ابری را اضافه کنید، که به شما امکان میدهد بدون نیاز به بهروزرسانی کد برنامههایتان هر بار که سبک نقشه را تغییر میدهید، تجربه نقشه راه سفارشیشدهای برای کاربران خود ایجاد کنید. برای اطلاعات بیشتر، سبکپردازی نقشه بااستفاده از سبکپردازی نقشه مبتنی بر ابر را ببینید.
روش
getServerTimeMillis()را بهVehicleLocationاضافه کنید تا زمان دریافت بهروزرسانی مکان توسط Fleet Engine مشخص شود.
۲.۲.۰ (۷ مه ۲۰۲۴)
تغییرات میانای برنامهسازی کاربردی
- میانای برنامهسازی کاربردی پشتیبانی برای یکپارچهسازی Jetpack Compose اضافه شد. این ویژگی آزمایشی است. برای جزئیات درباره ادغام با Jetpack Compose، با نمایندهتان تماس بگیرید.
۲.۱.۰ (۱۷ ژانویه ۲۰۲۴)
رفع اشکالها
- خرابیای را که وقتی کیت توسعه نرمافزار بیشاز یکبار درطول چرخه عمر برنامه مقداردهی اولیه میشود برطرف میکند.
تغییرات میانای برنامهسازی کاربردی
- روش بازیابی نمونه
GoogleMapایجادشده توسط کیت توسعه نرمافزار را معرفی میکند (ConsumerGoogleMap.getGoogleMap()). - میانای برنامهسازی کاربردی را برای بازیابی نمونههای
Markerایجادشده توسط کیت توسعه نرمافزار برای نمایش خودرو (ConsumerController.getConsumerMarker()) معرفی میکند. - میانای برنامهسازی کاربردی را برای دریافت بهروزرسانیهای پیشبینیشده کارخواه برای زمان و مسافت
درطول «همرسانی سفر» (
ProjectedRouteEta) معرفی میکند.
۱.۹۹.۲ (۳ نوامبر ۲۰۲۳)
خرابیای را که هنگام مقداردهی اولیه کیت توسعه نرمافزار از پردازش راه دور، جدا از برنامه، رخ میدهد برطرف میکند.
خرابیای را که هنگام اجرای پویانمایی دوربین رخ میدهد و فضای عمودی یا افقی کافی برای حاشیه داخلی وجود ندارد برطرف میکند. این مشکل فقط در جدیدترین رندرکننده نقشهها رخ میدهد.
اشکالی را برطرف میکند که باعث میشود بخش اول سفر «پشتسرهم» وقتی بخش دوم از همان جاده میگذرد، حذف شود.
مشکلات
- اگر
ConsumerApi.initialize()زمانی فراخوانی شود که نمونه API ازقبل وجود داشته باشد، استثنا قائل میشود. برای دور زدن این مشکل، ابتدا باConsumerApi.getInstance()تماس بگیرید وTaskبرگشتی را ارزیابی کنید تا مشخص شود آیا نمونه API ازقبل وجود دارد یا نه.
۲.۰.۰ (۱۵ سپتامبر ۲۰۲۳)
اعلامیه: تغییرات ناگهانی
حداقل الزام سطح میانای برنامه کاربردی از ۲۱ به ۲۳ بهروزرسانی شده است.
الزامات نسخه «کیت توسعه نرمافزار Google Maps» را از v17.0.0 به v18.1.0 بهروز میکند
حداقل نسخه موردنیاز کتابخانه استاندارد Kotlin از نسخه ۱.۶.۱۰ به نسخه ۱.۹.۰ بهروزرسانی شده است
بهروزرسانی نسخههای وابستگیهای «خدمات Google Play»
حداقل نسخه موردنیاز کتابخانه play-services-base از v18.0.1 به v18.2.0 بهروزرسانی شد
حداقل نسخه موردنیاز کتابخانه play-services-basement از v18.0.0 به v18.2.0 بهروزرسانی شد
حداقل نسخه موردنیاز کتابخانه play-services-location از v17.0.0 به v21.0.1 بهروزرسانی شد
حداقل نسخه موردنیاز کتابخانه play-services-tasks از نسخه ۱۸.۰.۱ به نسخه ۱۸.۰.۲ بهروزرسانی شده است
کتابخانه androidx.room:room-runtime را با حداقل نسخه موردنیاز تنظیمشده به v2.5.2 اضافه میکند
نسخههای وابستگیهای زیر را بهروز کنید
حداقل نسخه موردنیاز کتابخانه android-maps-utils از v0.4.2 به v3.5.2 بهروزرسانی شد
حداقل نسخه com.google.android.datatransport:transport-backend-cct موردنیاز از v3.0.0 به v3.1.9 بهروزرسانی شده است
حداقل نسخه com.google.android.datatransport:transport-runtime موردنیاز از v3.0.1 به v3.1.9 بهروزرسانی شده است
حداقل پیشنیاز نسخه androidx.lifecycle:lifecycle-extensions از v2.0.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:fragment از v1.0.0 به v1.6.1 بهروزرسانی شد
میاناهای برنامهسازی کاربردی منسوخشده قبلی زیر را برمیدارد:
ConsumerTrip،ConsumerTripCallback،ConsumerTripManager،ConsumerTripOptions. TripModel،TripModelCallback،TripModelManager، وTripModelOptionsجایگزین آنها شدند.برنامههایی که از Consumer SDK استفاده میکنند اکنون باید
targetSdkVersionاز API 31 یا بالاتر،compileSdkVersionاز API 33 یا بالاتر داشته باشند.برنامههایی که از «کیت توسعه نرمافزار مصرفکننده» استفاده میکنند اکنون باید از کتابخانه 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 ازقبل ایجاد شده است یا نه استفاده شود.
اعلان: منسوخ شدن میانای برنامهسازی کاربردی
کلاسهای حاشیهنویسی
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» پشتیبانی میکند. برای جزئیات، پردازنده جدید نقشه را ببینید.
از نسخههای v18.1.0(شامل) تا v19.0.0(غیرشامل) از محدوده «کیت توسعه نرمافزار Maps» پشتیبانی میکند.
خطای «مهلت مقرر تمام شده است» را برای ارتباطات داخلی بین «کیت توسعه نرمافزار» و پشتیبان Google برطرف میکند.
مشکل پردازش برای صفحهنمایش کوچک و حالت تصویردرتصویر را برطرف میکند.
راهنمای انتقال
۱.۹۹.۱ (۳۱ اوت ۲۰۲۳)
رفع اشکالها
خرابیای که هنگام ازبین رفتن فعالیت یا قطعه میزبان «کیت توسعه نرمافزار» رخ میدهد برطرف شد.
خرابیای را که وقتی ابعاد MapView صفر است (ارتفاع یا عرض) رخ میدهد برطرف میکند.
خرابیای که هنگام نمایش مکان خودرو روی چندخط مسیر رخ میداد برطرف شد.
بهبودها
- از خراب شدن کیت توسعه نرمافزار هنگام جانبیبار کردن برنامه میزبان و نبودن منابع دیداری پیشفرض جلوگیری میکند.
۱.۹۹.۰ (۲۲ ژوئن ۲۰۲۳)
رفع اشکالها
مشکل پردازش را برای صفحهنمایشهای کوچک و حالت تصویردرتصویر برطرف میکند.
لرزش خودرو درحین همرسانی سفر را برطرف میکند.
۱.۲.۱ (۷ ژوئن ۲۰۲۳)
رفع اشکالها
- اشکالی را برطرف میکند که باعث میشد خودرو درطول همرسانی سفر سوسو بزند.
۱.۲.۰ (۲۱ نوامبر ۲۰۲۲)
رفع اشکالها
- اشکالی را برطرف میکند که باعث میشد ترافیک خالی در
onTripActiveRouteTrafficUpdatedگزارش شود.
ویژگیهای جدید
- «چندخطیهای آگاه از ترافیک» اکنون بهطور عمومی دردسترس است.
۱.۱.۲ (۲۷ اکتبر ۲۰۲۲)
رفع اشکالها
- اشکالی را برطرف میکند که باعث میشد چندخطی مسیر پساز شروع
JourneySharingSessionبیشاز یکبار برایTripModelناپدید شود.
اعلامیه: توقف پشتیبانی از Android 5 (۲۵ ژوئیه ۲۰۲۲)
برای نسخه 1.1.1 کیت توسعه نرمافزار خود، یک سال پشتیبانی اضافی برای برنامههایی که در Android 5 اجرا میشوند، برای هر دو سطح API 21 و 22 ارائه میدهیم.
معنی این چیست:
«کیت توسعه نرمافزار مصرفکننده» که در برنامههای Android شما اجرا میشود تا ۳۰ ژوئن ۲۰۲۳ از حداقل Android 5 (سطح میانای برنامهسازی کاربردی ۲۱) پشتیبانی خواهد کرد.
پساز ۳۰ ژوئن ۲۰۲۳، فقط از سطح میانای برنامهسازی کاربردی Android نسخه ۲۳ و بالاتر پشتیبانی خواهیم کرد. بهعبارت دیگر، پساز آن تاریخ، پشتیبانی از سطوح میانای برنامهسازی کاربردی Android 21 و 22 را در همه نسخههای کیت توسعه نرمافزار متوقف خواهیم کرد. این یعنی اشکالات مربوط به Android 21 یا 22 در هر نسخه کیت توسعه نرمافزار (ازجمله 4.x) برطرف نخواهد شد و تضمین نمیکنیم که کیتهای توسعه نرمافزار بهدرستی عمل کنند.
نسخه ۱.۱.۱ (۲۵ ژوئیه ۲۰۲۲)
تغییر وابستگی
- حداقل سطح ایپیآی Android پشتیبانیشده را به ۲۱ تنزل میدهد.
نسخه ۱.۱.۰ (۲۸ آوریل ۲۰۲۲)
- بهبودهای داخلی.
نسخه ۱.۰.۱۹ (۱۷ مارس ۲۰۲۲)
رفع اشکالها
- نشت حافظه در کلاس
ConsumerApiبرطرف شد.
نسخه ۱.۰.۱۴ (۳۰ نوامبر ۲۰۲۱)
حداقل سطح Android API پشتیبانیشده اکنون ۲۳ است.
تغییرات میانای برنامهسازی کاربردی
تغییرات در کلاسهای
ConsumerTripوConsumerTripManager.- برخیاز نامهای روشها را پاکسازی کردیم تا معنی آنها واضحتر شود و با پلاتفرم iOS همسو شوند.
تغییرات در
ConsumerTripCallback،ConsumerTrip، وTripInfo.برخیاز نامهای کلاس برای ایجاد برابری با iOS تغییر کرد.
TripModel،TirpModelManager، وTripModelOptionsرا برای منسوخ کردنConsumerTrip،ConsumerTripManager، وConsumerTripOptionsمعرفی کرد.نام برخیاز روشها پاکسازی شد. نظرات JavaDoc را برای روشها اصلاح یا اضافه کردیم تا معانی واضحتری منتقل کنیم.
مدیریت خطای بهبودیافته.
سفارشیسازی سبکپردازی
بستهبندیکنندههای قدیمی منسوخ
-
MarkerStyleOptionsوPolylineStyleOptionsمنسوخ شدند و باMarkerOptionsوPolylineOptionsجایگزین شدند که هر دو با «کیت توسعه نرمافزار Maps» همرسانی میشوند.
-
پایش خرابی
تشخیص و ثبت خرابی اضافه شد.
- افزودهای اضافه شده است تا به شما امکان دهد از این عملکرد انصراف دهید. این کار بهعنوان بخشی از تلاش گستردهتر Geo برای پایش خرابی انجام شد.
تغییرات اصالتسنجی
- روشهای غیرضروری را از میاناهای «اصالتسنجی» بردارید.
- پارامتر
ServiceTypeرا برداشت.
- پارامتر
نسخه ۰.۹.۲۸ (۱۸ مه ۲۰۲۱)
تغییرات میانای برنامهسازی کاربردی
- همه روشهای
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
تغییرات پیادهسازی
- شرایط مسابقهای که در آن کیت توسعه نرمافزار میتوانست قبلاز آماده شدن از تعامل با نقشه خراب شود برطرف شد.
- کیت توسعه نرمافزار دیگر حاوی نسخه مبهمسازینشده
io.grpcنیست. - اشکال مربوط به چندخطیهای ترافیک چشمکزن در برخیاز دستگاهها برطرف شد. بخشهای ترافیک اکنون دارای پایانهای گرد خواهند بود.
نسخه ۰.۹.۱۵ (۷ اکتبر ۲۰۲۰)
تغییرات میانای برنامهسازی کاربردی
- این نسخه پخش چندخطیهای آگاه از ترافیک را معرفی میکند.
-
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()دیگر مقدار تهی را بهعنوان آرگومان نمیپذیرد.
نسخه ۰.۹.۹ (۱۵ ژوئیه ۲۰۲۰)
تغییرات میانای برنامهسازی کاربردی
- این تغییر بزرگی است که معماری واحدی را با
رابطهای واضحتر بین لایه فقط داده (برای نمونه،
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 بهطور پیشفرض فعال است و هرگز خودش را دوباره فعال یا غیرفعال نمیکند.
قبلاً، «دوربین خودکار» بهطور خودکار در
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
نسخه ۰.۹.۱ (۲۳ مارس ۲۰۲۰)
تغییرات میانای برنامهسازی کاربردی
-
TripInfo.getVehicleId()،TripInfo.getNumberOfPassengers()، TripInfo.getIntermediateDestinationIndex()، TripInfo.getTripActiveRoute()، وTripInfo.getTripRemainingRoute()را اضافه کرد. - کلاس
optionsاضافه شد که درطول مقداردهی اولیهConsumerApiاستفاده میشود و اجازه میدهد نشانیFleetEngineبهصورت پویا تنظیم شود. اگر API با مقدارFleetEngineفراخوانی نشود، سعی میکند آن را از مانیفست Android واکشی کند یا درغیراینصورت به مقدار پیشفرض برمیگردد.
بهبودها
- وقتی وضعیت سفر
ARRIVED_AT_PICKUPباشد، چندخطی مسیر نمایش داده نمیشود. - ردیابی خودرو خارج از مسیر بهبود یافته است (به DriverSDK 1.15 نیاز دارد):
- وقتی خودرو از محل پیکآپ عبور میکند، ردیابی خودرو خودرو را به مسیر نمیچسباند.
- ردیابی خودرو امکان نمایش خودرو در خارج از جاده را فراهم میکند؛ برای مثال، در پارکینگهای بدون نقشه.
- اکنون نماد خودرو زمانی بهروزرسانی میشود که مقصد راننده با مقصد در Fleet Engine مطابقت نداشته باشد.
نسخه ۰.۸.۶ (۱۶ دسامبر ۲۰۱۹)
تغییرات میانای برنامهسازی کاربردی
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
گزارشهایی برای تأخیر درخواست سفر اضافه شد.
گزارشهای مربوط به خطاهای پاسخ سفر اضافه شد.
یادداشتها
- از نسخه ۰.۸.۱، «کیت توسعه نرمافزار مصرفکننده» برای Android بهصورت بایگانی zip گواهینامهدار ارائه میشود. برای کسب اطلاعات درباره نحوه حذف Jetifier، به Jetifier: حالت معکوس مراجعه کنید.
نسخه ۰.۸.۱ (۱۳ سپتامبر ۲۰۱۹)
ویژگیهای جدید
پشتیبانی از ConsumerMapView.
دادههای ODRD اکنون بهجای فایل فشرده .aar در مخزن maven ارسال میشوند. برای اطلاعات بیشتر، افزودن «کیت توسعه نرمافزار مصرفکننده» به برنامه را ببینید.
تغییرات میانای برنامهسازی کاربردی
ConsumerController.disableAutoCamera()بهعنوان تابع معکوس بهcenterMapForState()اضافه شد.
VehicleLocation.getUpdateTime()اکنون «بلندی» را برمیگرداند که نشاندهنده مهر زمان (به میلیثانیه) است.رابط
AuthTokenFactoryرا ساده کردیم تا یک روش واحد برای تولید کد ارائه شود. AuthTokenFactoryاز میانای به کلاس انتزاعی تغییر کرد تا سازگاری با نسخه قدیمی در Java7 فعال شود. این تغییر با نسخههای قبلی سازگار است، اما روشهای قدیمی برای تولید رمز خدمات تکی منسوخ شدهاند و درنهایت برداشته خواهند شد.
تغییرات پیادهسازی
داراییها اکنون در مرکز نماد قرار دارند و انحراف سایه حذف شده است.
بهجای انتظار برای وضعیت «سفر» تحت پایش، از
setStateتاJOURNEY_SHARING onStartTripMonitoring()را انتخاب کنید.همیشه دادهها را برای اولین بهروزرسانی دادههای سفر برمیگرداند، حتی زمانی که دادههای سفر همگامسازی نشده باشند.
Android Map Utils بهعنوان وابستگی ارائهشده اضافه شد.
رفع اشکالها
- نحو صادرات proguard شکسته برای grpc keep اصلاح شد.
نسخه ۰.۷.۰ (۷ اوت ۲۰۱۹)
ویژگیهای جدید
- پشتیبانی از چند مقصد برای «همرسانی سفر».
تغییرات میانای برنامهسازی کاربردی
روشهای جدید برای
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از ادغامConsumerMapStatesENROUTE_TO_PICKUP،ARRIVED_AT_PICKUP،ENROUTE_TO_DROPOFF، وCOMPLETEایجاد شد.StateChangeCallbacksبهروزرسانی شد.
onStateJourneySharing()اضافه شد.
onStateWaitingForPickup()،onStateDriverArrived()،onStateEnroute()، وonStateEndofTrip()برداشته شدند.
رفع اشکالها
اشکالی که باعث میشد وقتی پایش سفر در میان سفر فعال شروع میشود (نه در ابتدای مسیر)، مسیر به مکان خودرو محدود نشود برطرف شد.
اشکالی که در آن فراخوانیهای برگشتی سفر برای شنوندگان ثبتشده در Tripmanager پساز اینکه TripManager دادههای سفر را واکشی کرده بود فراخوانی نمیشد برطرف شد.
اکنون زوم دوربین فقط شامل مسیر فعال و ایستگاه بین راهی سفر بعدی (ایستگاه بین راهی متعلق به سفر) میشود. حتی اگر بخش باقیمانده قابلمشاهده باشد، بزرگنمایی هرگز آن را دربرنخواهد گرفت. قبلاً، وقتی خودرو در مسیر سوار کردن مسافر بود یا به محل سوار کردن مسافر میرسید، نقطه پیاده کردن مسافر در بزرگنمایی گنجانده میشد. این دیگر درست نیست.
بهبودها
اولین ایستگاه بازرسی باقیمانده را با دادههای «راننده» تکمیل کنید (فهرست ایستگاههای بازرسی باقیمانده از
ConsumerTripCallback.onTripRemainingWaypointsUpdatedوTripInfo.getRemainingWaypoints()برگردانده میشود.وقتی «زمان تخمینی رسیدن» به اولین ایستگاه بین راهی در فهرست تغییر میکند، همه «زمانهای تخمینی رسیدن» ایستگاههای بین راهی باقیمانده را بهروزرسانی کنید.
فقط وقتی راننده به محل سوار کردن میرسد، دوربین خودکار را بهاجبار دوباره فعال کنید. قبلاً، دوربین خودکار با هر تغییر وضعیت سفر به حالت فعال بازنشانی میشد. «دوربین خودکار» همچنان بهطور پیشفرض فعال است. اگر سفر فعال جدیدی بدون تماس جدید با
startTripMonitoring()تنظیم شود، «دوربین خودکار» دوباره فعال نخواهد شد.
نسخه ۰.۶.۱ (۲۶ ژوئن ۲۰۱۹)
ویژگیهای جدید
- پشتیبانی از خودرو مشترک برای همرسانی سفر.
تغییرات میانای برنامهسازی کاربردی
ConsumerController.getConsumerMapStyle()اکنونConsumerMapStyleرا بهجایTask<ConsumerMapStyle>برمیگرداند.
PolylineStyle.setZIndex()اضافه شد.
رفع اشکالها
پویانمایی مسیر اکنون فقط زمانی اتفاق میافتد که بخش مسیر همگامسازی شده باشد، که منجر به بهبود تجربه کاربری میشود.
«لرزش» خودرو درطول درونیابی پویانمایی وقتی بهروزرسانیهای مکان راننده نزدیک به هم هستند برطرف شد.
اشکالی برطرف شد که در آن وقتی پایش سفر در میان سفر فعال شروع میشد، خودرو بهجای شروع از بهروزترین مکانش، از ابتدای مسیر شروع میکرد.
وقتی چندخطی مسیر فعال با مسیر باقیمانده همپوشانی دارد، آن را بالای مسیر باقیمانده نمایش دهید.
بهبودها
- اکنون کلاس gRPC
Statusرا با روشهای غیرمبهم نشان دهید.
نسخه ۰.۵.۱.۰۱ (۱۷ مه ۲۰۱۹)
ویژگیهای جدید
- پشتیبانی پشت سر هم برای «همرسانی مسیر».
تغییرات میانای برنامهسازی کاربردی
- کلاس جدید
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جایگزین شد.