এই বিভাগে অ্যান্ড্রয়েডের জন্য কনজিউমার এসডিকে-এর রিলিজ নোট রয়েছে।
ঘোষণা: এপিআই লেভেল ২৩, ২৪ এবং ২৫-এর জন্য সমর্থন স্থগিত করা হচ্ছে।
মোবাইল ওএস সংস্করণ সমর্থন নীতি অনুসারে, আমরা কনজিউমার এসডিকে ফর অ্যান্ড্রয়েড-এর আসন্ন প্রধান সংস্করণগুলিতে অ্যান্ড্রয়েড ৬ এবং ৭ (এপিআই লেভেল ২৩, ২৪, এবং ২৫)-এর সমর্থন স্থগিত করছি।
২০২৫ সালের চতুর্থ ত্রৈমাসিক থেকে প্রকাশিত অ্যান্ড্রয়েডের জন্য কনজিউমার এসডিকে-র সংস্করণগুলো ন্যূনতম অ্যান্ড্রয়েড ৮ (এপিআই লেভেল ২৬) সমর্থন করবে। এর আগের এসডিকে সংস্করণগুলো অ্যান্ড্রয়েড ৬ এবং ৭ সমর্থন করা অব্যাহত রাখবে।
যদি আপনার ডিপেন্ডেন্সিগুলোতে ভার্সন নম্বর উল্লেখ না থাকে, তাহলে আপনার IDE সর্বশেষ SDK ভার্সনটি লোড করবে এবং আপনার অ্যাপের নতুন বিল্ডগুলো অ্যান্ড্রয়েড ৬ ও ৭ সাপোর্ট করবে না।
আপনার অ্যাপের নতুন সংস্করণগুলির জন্য সর্বনিম্ন সমর্থিত অপারেটিং সিস্টেমের মান কখন বাড়ানো হবে তা নিয়ন্ত্রণ করতে, আপনার অ্যাপ্লিকেশনের বিল্ড ডিপেন্ডেন্সিতে অ্যান্ড্রয়েডের জন্য কনজিউমার এসডিকে-র একটি সংস্করণ নির্দিষ্ট করুন।
৪.০.০ (অক্টোবর ০৩, ২০২৫)
- অভ্যন্তরীণ উন্নতি।
৩.২.০ (২৬শে জুন, ২০২৫)
- অভ্যন্তরীণ লগিং-এর উন্নতি।
নির্ভরতা এবং কনফিগারেশন পরিবর্তন
- অ্যান্ড্রয়েডের জন্য কনজিউমার এসডিকে-র ৩.২.০ সংস্করণ থেকে অ্যাপগুলোকে অবশ্যই কোটলিন ২.১-এ আপগ্রেড করতে হবে।
বাগ সংশোধন
- অভ্যন্তরীণ অ্যানিমেশন সিদ্ধান্তের জন্য এয়ার ডিসটেন্সের পরিবর্তে পলিলাইন লেংথ ব্যবহার করুন।
৩.১.০ (১০ মার্চ, ২০২৫)
- অভ্যন্তরীণ লগিং-এর উন্নতি।
৩.০.০ (০৬ ডিসেম্বর, ২০২৪)
নির্ভরতা এবং কনফিগারেশন পরিবর্তন
- অ্যান্ড্রয়েড কনজিউমার এসডিকে-এর ৩.০.০ সংস্করণ থেকে অ্যাপগুলিকে অবশ্যই কোটলিন ২.০-তে আপগ্রেড করতে হবে। অ্যান্ড্রয়েড কনজিউমার এসডিকে ৩.০ মাইগ্রেশন গাইড দেখুন।
- কনজিউমার এসডিকে-এর টার্গেটএসডিকে এখন অ্যান্ড্রয়েড ১৪ (এপিআই লেভেল ৩৪)। ২০২৪ সালের আগস্ট মাস থেকে গুগল প্লে স্টোরে ডেপ্লয় করা সমস্ত অ্যাপের জন্য এটি একটি আবশ্যিক শর্ত । গুগল প্লে-এর টার্গেট এপিআই লেভেলের আবশ্যকতা সম্পর্কে জানুন।
২.৯৯.০ (২৫ নভেম্বর, ২০২৪)
বাগ সংশোধন
-
ConsumerApi.cleanUp()কার্যকর হতে অতিরিক্ত সময় নিলে যে ANR ত্রুটি দেখা দিত, তা সমাধান করা হয়েছে। রিলিজটি ইন্টিগ্রেট হয়ে গেলে এটি পর্যায়ক্রমে (০% থেকে শুরু করে) চালু করা হবে। - এর মাধ্যমে সেই সমস্যার সমাধান করা হয়েছে যেখানে ড্রাইভাররা "INTERNAL" কোড এবং "Panic! This is a bug!" বার্তা সহ gRPC ত্রুটি পেত। রিলিজটি ইন্টিগ্রেট হয়ে গেলে এটি পর্যায়ক্রমে (০% থেকে শুরু করে) চালু করা হবে।
২.৩.০ (২ আগস্ট, ২০২৪)
এপিআই পরিবর্তন
ক্লাউড-ভিত্তিক ম্যাপ স্টাইলিং সাপোর্ট যোগ করুন, যা আপনাকে প্রতিবার ম্যাপ স্টাইল পরিবর্তনের জন্য আপনার অ্যাপের কোড আপডেট না করেই ব্যবহারকারীদের জন্য একটি কাস্টমাইজড রোড ম্যাপ অভিজ্ঞতা তৈরি করতে দেয়। আরও তথ্যের জন্য, ‘ক্লাউড-ভিত্তিক ম্যাপ স্টাইলিং দিয়ে ম্যাপ স্টাইল করুন ’ দেখুন।
ফ্লিট ইঞ্জিন কখন লোকেশন আপডেটটি গ্রহণ করেছে তা নির্ধারণ করতে
VehicleLocationএgetServerTimeMillis()মেথডটি যোগ করুন।
২.২.০ (৭ মে, ২০২৪)
এপিআই পরিবর্তন
- Jetpack Compose ইন্টিগ্রেশনের জন্য সাপোর্ট এপিআই যোগ করা হয়েছে। এটি একটি পরীক্ষামূলক ফিচার। Jetpack Compose-এর সাথে ইন্টিগ্রেশন সম্পর্কে বিস্তারিত জানতে আপনার প্রতিনিধির সাথে যোগাযোগ করুন।
২.১.০ (১৭ জানুয়ারি, ২০২৪)
বাগ সংশোধন
- অ্যাপ্লিকেশন লাইফসাইকেল জুড়ে এসডিকে একাধিকবার ইনিশিয়ালাইজ করার ফলে যে ক্র্যাশ ঘটত, তা সমাধান করা হয়েছে।
এপিআই পরিবর্তন
- SDK দ্বারা তৈরি
GoogleMapইনস্ট্যান্সটি পুনরুদ্ধার করার পদ্ধতি চালু করা হয়েছে (ConsumerGoogleMap.getGoogleMap())। - যানবাহনটিকে উপস্থাপন করার জন্য SDK দ্বারা তৈরি
Markerইনস্ট্যান্সগুলি পুনরুদ্ধার করার জন্য API চালু করা হয়েছে (ConsumerController.getConsumerMarker())। - জার্নি শেয়ারিং (
ProjectedRouteEta) চলাকালীন ক্লায়েন্টের সময় এবং দূরত্বের আনুমানিক আপডেট গ্রহণ করার জন্য এপিআই চালু করা হয়েছে।
১.৯৯.২ (৩ নভেম্বর, ২০২৩)
অ্যাপ্লিকেশন থেকে আলাদা কোনো রিমোট প্রসেস থেকে SDK ইনিশিয়ালাইজ করার সময় যে ক্র্যাশটি ঘটত, তা সমাধান করা হয়েছে।
ক্যামেরা অ্যানিমেশন চালানোর সময় প্যাডিংয়ের জন্য পর্যাপ্ত উল্লম্ব বা অনুভূমিক জায়গা না থাকলে যে ক্র্যাশটি ঘটত, তার সমাধান করা হয়েছে। এটি শুধুমাত্র সর্বশেষ ম্যাপস রেন্ডারারে ঘটে থাকে।
একটি পরপর যাত্রার দ্বিতীয় অংশ একই রাস্তা দিয়ে গেলে প্রথম অংশটি বাদ পড়ে যাওয়ার বাগটি সংশোধন করা হয়েছে।
সমস্যা
- যদি কোনো এপিআই ইনস্ট্যান্স আগে থেকেই বিদ্যমান থাকে, তাহলে
ConsumerApi.initialize()কল করলে একটি এক্সেপশন থ্রো হয়। এর সমাধান করতে, প্রথমেConsumerApi.getInstance()কল করুন এবং ফেরত আসাTaskটি ইভ্যালুয়েট করে দেখুন যে এপিআই ইনস্ট্যান্সটি আগে থেকেই বিদ্যমান আছে কিনা।
২.০.০ (১৫ সেপ্টেম্বর, ২০২৩)
ঘোষণা: জরুরি পরিবর্তন
ন্যূনতম এপিআই লেভেলের প্রয়োজনীয়তা ২১ থেকে বাড়িয়ে ২৩ করা হয়েছে।
Maps SDK-এর ভার্সন আবশ্যকতা v17.0.0 থেকে v18.1.0-এ আপডেট করা হয়েছে।
কোটলিন স্ট্যান্ডার্ড লাইব্রেরির ন্যূনতম সংস্করণের প্রয়োজনীয়তা v1.6.10 থেকে v1.9.0-এ আপডেট করা হয়েছে।
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 লাইব্রেরির ন্যূনতম ভার্সনের প্রয়োজনীয়তা v18.0.1 থেকে v18.0.2-এ আপডেট করা হয়েছে।
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-এ আপডেট করা হয়েছে।
পূর্বে অপ্রচলিত ঘোষিত নিম্নলিখিত API-গুলি সরিয়ে ফেলা হয়েছে:
ConsumerTrip,ConsumerTripCallback,ConsumerTripManager,ConsumerTripOptions। এগুলির পরিবর্তেTripModel,TripModelCallback,TripModelManagerএবংTripModelOptionsযুক্ত করা হয়েছে।যেসব অ্যাপ কনজিউমার এসডিকে ব্যবহার করে, সেগুলোর এখন
targetSdkVersion) অবশ্যই এপিআই ৩১ বা তার বেশি এবংcompileSdkVersionঅবশ্যই এপিআই ৩৩ বা তার বেশি হতে হবে।যেসব অ্যাপ কনজিউমার এসডিকে (Consumer SDK) ব্যবহার করে, সেগুলোকে এখন জাভা ৮ লাইব্রেরি সাপোর্ট সক্রিয় করতে হবে। আপডেট করার নির্দেশাবলীর জন্য https://developer.android.com/studio/write/java8-support দেখুন।
যেসব অ্যাপ Proguard বা Dexguard ব্যবহার করে, সেগুলোকে অবশ্যই R8-এ স্থানান্তরিত করতে হবে। আরও তথ্যের জন্য https://developer.android.com/build/shrink-code দেখুন।
যেসব অ্যাপ কনজিউমার এসডিকে (Consumer SDK) ব্যবহার করে, তাদের অবশ্যই ডিসুগারিং (desugaring) সক্রিয় করতে হবে। নির্দেশাবলীর জন্য https://developer.android.com/studio/write/java8-support#library-desugaring দেখুন।
ConsumerApi.initialize()মেথডটি এখন একটি এক্সেপশন থ্রো করে, যদি আগে থেকেই একটি API ইনস্ট্যান্স তৈরি থাকা অবস্থায় এটিকে কল করা হয়। আগে থেকে কোনো API ইনস্ট্যান্স তৈরি আছে কিনা তা নির্ধারণ করতেConsumerApi.getInstance()দ্বারা রিটার্ন করাTaskঅবশ্যই ব্যবহার করতে হবে।
ঘোষণা: এপিআই বাতিলকরণ
Trip.TripStatusএবংTrip.TripTypeঅ্যানোটেশন ক্লাসগুলোকে অপ্রচলিত ঘোষণা করা হয়েছে এবং সেগুলোর পরিবর্তেTripInfo.TripStatusওTripInfo.TripTypeঅ্যানোটেশন ক্লাস যুক্ত করা হয়েছে।এই পরিবর্তনের অংশ হিসেবে,
TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status)ফাংশনটি বাতিল করা হয়েছে এবং এর পরিবর্তেTripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status)ফাংশনটি যোগ করা হয়েছে।এই পরিবর্তনের অংশ হিসেবে,
TripInfo#getTripStatus()অপ্রচলিত ঘোষণা করা হয়েছে এবং এর পরিবর্তেTripInfo#getCurrentTripStatus()যোগ করা হয়েছে।এই পরিবর্তনের অংশ হিসেবে,
TripInfo#getTripType()অপ্রচলিত ঘোষণা করা হয়েছে এবং এর পরিবর্তেTripInfo#getCurrentTripType()যোগ করা হয়েছে।
Tripক্লাসটি বাতিল করা হয়েছে।
অন্যান্য পরিবর্তন এবং ত্রুটি সংশোধন
সর্বশেষ Maps SDK রেন্ডারার অনুরোধ করা সমর্থন করে। বিস্তারিত জানতে নতুন ম্যাপ রেন্ডারার দেখুন।
ম্যাপস এসডিকে-এর v18.1.0 (অন্তর্ভুক্ত) থেকে v19.0.0 (বর্জনীয়) সংস্করণ পর্যন্ত সমর্থন প্রদান করে।
SDK এবং গুগল ব্যাকএন্ডের মধ্যে অভ্যন্তরীণ যোগাযোগের ক্ষেত্রে "ডেডলাইন অতিক্রম করেছে" ত্রুটিটি সমাধান করা হয়েছে।
ছোট আকারের স্ক্রিন এবং পিকচার-ইন-পিকচার মোডের রেন্ডারিং সমস্যা সমাধান করা হয়েছে।
অভিবাসন নির্দেশিকা
১.৯৯.১ (৩১ আগস্ট, ২০২৩)
বাগ সংশোধন
এসডিকে হোস্ট অ্যাক্টিভিটি বা ফ্র্যাগমেন্ট ধ্বংস হয়ে গেলে যে ক্র্যাশটি ঘটে, তার সমাধান করা হয়েছে।
MapView-এর ডাইমেনশন (উচ্চতা বা প্রস্থ) ০ হলে যে ক্র্যাশটি ঘটত, তার সমাধান করা হয়েছে।
রুট পলিলাইনে গাড়ির অবস্থান প্রজেক্ট করার সময় যে ক্র্যাশটি ঘটত, তা সমাধান করা হয়েছে।
উন্নতি
- হোস্ট অ্যাপ্লিকেশন সাইডলোড করা হলে এবং ডিফল্ট ভিজ্যুয়াল রিসোর্সগুলো উপস্থিত না থাকলে, এটি SDK-কে ক্র্যাশ করা থেকে প্রতিরোধ করে।
১.৯৯.০ (২২ জুন, ২০২৩)
বাগ সংশোধন
ছোট আকারের স্ক্রিন এবং পিকচার-ইন-পিকচার মোডের জন্য রেন্ডারিং সমস্যা সমাধান করা হয়েছে।
জার্নি শেয়ারিং চলাকালীন গাড়ির ঝিকিমিকি সমস্যা সমাধান করে।
১.২.১ (৭ জুন, ২০২৩)
বাগ সংশোধন
- জার্নি শেয়ারিং চলাকালীন যানবাহনটি ঝিকমিক করার বাগটি সংশোধন করা হয়েছে।
১.২.০ (২১ নভেম্বর, ২০২২)
বাগ সংশোধন
-
onTripActiveRouteTrafficUpdatedকলব্যাকে খালি ট্র্যাফিক রিপোর্ট হওয়ার বাগটি সংশোধন করা হয়েছে।
নতুন বৈশিষ্ট্য
- "ট্র্যাফিক-সচেতন পলিলাইন" এখন সর্বসাধারণের জন্য উপলব্ধ।
১.১.২ (২৭ অক্টোবর, ২০২২)
বাগ সংশোধন
- একটি
TripModelএর জন্যJourneySharingSessionএকাধিকবার শুরু করার পর রাউট পলিলাইনটি অদৃশ্য হয়ে যাওয়ার বাগটির সমাধান করা হয়েছে।
ঘোষণা: অ্যান্ড্রয়েড ৫-এর জন্য সমর্থন স্থগিত করা হচ্ছে (২৫ জুলাই, ২০২২)
আমাদের v1.1.1 SDK ভার্সনের মাধ্যমে, আমরা অ্যান্ড্রয়েড ৫-এ চালিত অ্যাপগুলোর জন্য API লেভেল ২১ এবং ২২ উভয় ক্ষেত্রেই অতিরিক্ত এক বছরের সাপোর্ট প্রদান করছি।
এর মানে হলো:
আপনার অ্যান্ড্রয়েড অ্যাপে চলমান কনজিউমার এসডিকে ৩০ জুন, ২০২৩ পর্যন্ত ন্যূনতম অ্যান্ড্রয়েড ৫ (এপিআই লেভেল ২১) সমর্থন করবে।
২০২৩ সালের ৩০শে জুনের পর, আমরা শুধুমাত্র অ্যান্ড্রয়েড এপিআই লেভেল ২৩ এবং তার উপরের সংস্করণগুলোকে সমর্থন করব। অন্য কথায়, ঐ তারিখের পর আমরা সমস্ত এসডিকে সংস্করণে অ্যান্ড্রয়েড এপিআই লেভেল ২১ এবং ২২-এর সমর্থন বন্ধ করে দেব। এর মানে হলো, যেকোনো এসডিকে সংস্করণে (৪.x সহ) অ্যান্ড্রয়েড ২১ বা ২২ সম্পর্কিত বাগগুলো ঠিক করা হবে না, এবং এসডিকেগুলো সঠিকভাবে কাজ করবে এমন কোনো নিশ্চয়তা আমরা দিচ্ছি না।
সংস্করণ ১.১.১ (২৫শে জুলাই, ২০২২)
নির্ভরশীলতার পরিবর্তন
- সর্বনিম্ন সমর্থিত অ্যান্ড্রয়েড এপিআই লেভেলকে ২১-এ নামিয়ে আনা হয়েছে।
সংস্করণ ১.১.০ (২৮ এপ্রিল, ২০২২)
- অভ্যন্তরীণ উন্নতি।
v1.0.19 (১৭ মার্চ, ২০২২)
বাগ সংশোধন
-
ConsumerApiক্লাসের একটি মেমোরি লিক সংশোধন করা হয়েছে।
সংস্করণ ১.০.১৪ (৩০ নভেম্বর, ২০২১)
এখন সর্বনিম্ন সমর্থিত অ্যান্ড্রয়েড এপিআই লেভেল হলো ২৩।
এপিআই পরিবর্তন
ConsumerTripএবংConsumerTripManagerক্লাসগুলিতে পরিবর্তন আনা হয়েছে।- কিছু মেথডের নাম পরিমার্জন করা হয়েছে, যাতে সেগুলোর অর্থ আরও স্পষ্ট হয় এবং iOS প্ল্যাটফর্মের সাথে সামঞ্জস্যপূর্ণ হয়।
ConsumerTripCallback,ConsumerTripএবংTripInfoতে পরিবর্তন আনা হয়েছে।iOS-এর সাথে সামঞ্জস্য আনতে কিছু ক্লাসের নাম পরিবর্তন করা হয়েছে।
ConsumerTrip,ConsumerTripManagerএবংConsumerTripOptionsঅপ্রচলিত করতেTripModel,TirpModelManagerএবংTripModelOptionsচালু করা হয়েছে।কিছু মেথডের নাম পরিমার্জন করা হয়েছে। আরও স্পষ্ট অর্থ বোঝানোর জন্য মেথডগুলোতে জাভাডক কমেন্ট সংশোধন করা হয়েছে বা নতুন কমেন্ট যোগ করা হয়েছে।
উন্নত ত্রুটি ব্যবস্থাপনা।
স্টাইলিং কাস্টমাইজেশন
অপ্রচলিত লিগ্যাসি র্যাপার
-
MarkerStyleOptionsএবংPolylineStyleOptionsঅপ্রচলিত ঘোষণা করা হয়েছে এবং এদের পরিবর্তেMarkerOptionsওPolylineOptionsআনা হয়েছে, যে দুটিই Maps SDK-এর সাথে ব্যবহৃত হয়।
-
দুর্ঘটনা পর্যবেক্ষণ
ক্র্যাশ শনাক্তকরণ এবং লগিং যুক্ত করা হয়েছে।
- এই কার্যকারিতাটি বন্ধ করার সুযোগ যোগ করা হয়েছে। দুর্ঘটনা পর্যবেক্ষণের জন্য একটি বৃহত্তর ভৌগোলিক প্রচেষ্টার অংশ হিসেবে এটি করা হয়েছে।
প্রমাণীকরণ পরিবর্তন
- প্রমাণীকরণ ইন্টারফেসগুলো থেকে অপ্রয়োজনীয় মেথডগুলো সরিয়ে দিন।
-
ServiceTypeপ্যারামিটারটি সরিয়ে দেওয়া হয়েছে।
-
v0.9.28 (১৮ই মে, ২০২১)
এপিআই পরিবর্তন
- প্যারামিটার হিসেবে
TripInfoব্যবহার করার জন্য সমস্তConsumerTripCallbackমেথড আপডেট করা হয়েছে। -
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.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 ক্র্যাশ করতে পারতো।
- এসডিকে-তে এখন আর
io.grpcএর কোনো অব্যক্ত অনুলিপি নেই। - কিছু নির্দিষ্ট ডিভাইসে ট্র্যাফিক পলিলাইনের ঝিকিমিকি করার বাগটি সংশোধন করা হয়েছে। এখন থেকে ট্র্যাফিক সেগমেন্টগুলোর প্রান্তভাগ গোলাকার হবে।
v0.9.15 (৭ অক্টোবর, ২০২০)
এপিআই পরিবর্তন
- এই রিলিজে ট্র্যাফিক অ্যাওয়্যার পলিলাইনস চালু করা হয়েছে। -
TripInfo.getActiveRouteTraffic()এবংTripInfo.getRemainingRouteTraffic()যোগ করা হয়েছে।- ট্র্যাফিক পরিবর্তিত হলে তা নির্দেশ করার জন্য
ConsumerTripCallback.onTripActiveRouteTrafficUpdated()এবংConsumerTripCallback.onTripRemainingRouteTrafficUpdated()যোগ করা হয়েছে। - ট্র্যাফিক কাস্টমাইজেশনের জন্য
PolylineStyleOptionsযোগ করা হয়েছে (setTrafficEnabled(),setTrafficColorNoData(),setTrafficColorNormal(),setTrafficColorSlow(),setTrafficColorTrafficJam())। - Exposed
PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITION. -
TripWaypoint.getTrafficData()যোগ করা হয়েছে। -
TrafficDataডেটা টাইপ যোগ করা হয়েছে। -
ConsumerController.hideAllSessions()যোগ করা হয়েছে।ConsumerController.showSession()এখন আর আর্গুমেন্ট হিসেবে null গ্রহণ করে না।
- ট্র্যাফিক পরিবর্তিত হলে তা নির্দেশ করার জন্য
সংস্করণ ০.৯.৯ (১৫ জুলাই, ২০২০)
এপিআই পরিবর্তন
- এটি একটি বড় পরিবর্তন যা একটি মডিউলারাইজড আর্কিটেকচার চালু করে, যেখানে শুধুমাত্র-ডেটা লেয়ার (যেমন,
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()যোগ করা হয়েছে। - কাস্টম FAB এবং এর সাথে যুক্ত মেথডগুলো (
ConsumerController.isMyLocationFabEnabledএবংConsumerController.setMyLocationFabEnabled) সরিয়ে ফেলা হয়েছে।
বাস্তবায়ন পরিবর্তন
- একটি
ConsumerTripCallback, তাLifecycleOwnerসহ বা ছাড়া নিবন্ধিত হোক না কেন,TripStatus.COMPLETEবাTripStatus.CANCELEDহলে আর স্বয়ংক্রিয়ভাবে অনিবন্ধিত হয় না। - অটোক্যামেরা এখন ডিফল্টরূপে চালু থাকে এবং এটি নিজে থেকে কখনও পুনরায় চালু বা বন্ধ হয় না। পূর্বে,
TripStatus.ARRIVED_AT_PICKUPএ অটোক্যামেরা স্বয়ংক্রিয়ভাবে পুনরায় চালু হতো এবং যাত্রা শেয়ার করার সময় ব্যবহারকারী ম্যাপ ব্যবহার করলে তা নিজে থেকে বন্ধ হয়ে যেত। - জার্নি শেয়ারিং গাড়ির অ্যানিমেশনে নিম্নলিখিত উন্নতিগুলো করা হয়েছে:
- জার্নি শেয়ারিং অ্যানিমেশন এখন এমন পরিস্থিতি সামাল দেয়, যেখানে কোনো যানবাহন বৈধভাবে ইতিমধ্যে অতিক্রম করা কোনো পথ ধরে ফিরে আসতে পারে।
- যখন অ্যালগরিদমিকভাবে উপযুক্ত বলে নির্ধারিত হবে, তখন যানবাহনটি এখন পয়েন্টগুলোর মধ্যে রুট ইন্টারপোলেশনের পরিবর্তে সরলরেখায় চলবে।
-
FINE_LOCATIONঅনুমতির আর প্রয়োজন নেই।
অন্যান্য পরিবর্তন
- নিম্নলিখিত নির্ভরতা সংস্করণগুলি আপডেট করা হয়েছে:
- com.google.android.datatransport:transport-api:2.2.0
- com.google.android.datatransport:transport-backend-cct:2.2.0
- com.google.android.datatransport:ট্রান্সপোর্ট-রানটাইম:2.2.0
v0.9.1 (২৩ মার্চ, ২০২০)
এপিআই পরিবর্তন
-
TripInfo.getVehicleId(),TripInfo.getNumberOfPassengers(),TripInfo.getIntermediateDestinationIndex(),TripInfo.getTripActiveRoute(), এবংTripInfo.getTripRemainingRoute()যোগ করা হয়েছে। -
ConsumerApiইনিশিয়ালাইজেশনের সময় ব্যবহৃতoptionsক্লাস যোগ করা হয়েছে, যাFleetEngineঅ্যাড্রেসকে ডায়নামিকভাবে সেট করার সুযোগ দেয়। যদি API-টি কোনোFleetEngineভ্যালু দিয়ে কল করা না হয়, তবে এটি অ্যান্ড্রয়েড ম্যানিফেস্ট থেকে তা ফেচ করার চেষ্টা করে অথবা ডিফল্ট ভ্যালুতে ফিরে যায়।
উন্নতি
- ট্রিপের স্ট্যাটাস
ARRIVED_AT_PICKUPহলে রুট পলিলাইনটি প্রদর্শিত হয় না। - অফ-রুট যানবাহন ট্র্যাকিং উন্নত করা হয়েছে (এর জন্য DriverSDK 1.15 প্রয়োজন):
- গাড়িটি পিকআপ পয়েন্ট অতিক্রম করে গেলে ভেহিকল ট্র্যাকিং সেটিকে রুটে স্থির রাখে না।
- যানবাহন ট্র্যাকিং রাস্তার বাইরে, যেমন মানচিত্রে অন্তর্ভুক্ত নয় এমন পার্কিং লটে, যানবাহনটিকে প্রদর্শন করতে সক্ষম করে।
- এখন থেকে ড্রাইভারের গন্তব্য ফ্লিট ইঞ্জিনের গন্তব্যের সাথে না মিললে গাড়ির আইকনটি আপডেট হবে।
v0.8.6 (১৬ ডিসেম্বর, ২০১৯)
এপিআই পরিবর্তন
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:ট্রান্সপোর্ট-রানটাইম:2.0.0
ট্রিপ অনুরোধের বিলম্ব সংক্রান্ত লগ যোগ করা হয়েছে।
ট্রিপ রেসপন্স ত্রুটির লগ যোগ করা হয়েছে।
নোট
- সংস্করণ ০.৮.১ থেকে, অ্যান্ড্রয়েডের জন্য কনজিউমার এসডিকে একটি জেটিফাইড জিপ আর্কাইভ হিসেবে আসে। এটিকে কীভাবে ডি-জেটিফাই করতে হয় সে সম্পর্কে তথ্যের জন্য, জেটিফায়ার: রিভার্স মোড দেখুন।
v0.8.1 (সেপ্টেম্বর ১৩, ২০১৯)
নতুন বৈশিষ্ট্য
ConsumerMapView- এর জন্য সমর্থন।
ODRD আর্টিফ্যাক্টগুলো এখন একটি .aar জিপফাইলের পরিবর্তে একটি মেভেন রিপোজিটরিতে সরবরাহ করা হয়। আরও তথ্যের জন্য, আপনার অ্যাপে কনজিউমার SDK যোগ করুন দেখুন।
এপিআই পরিবর্তন
centerMapForState()-এর বিপরীত ফাংশন হিসেবেConsumerController.disableAutoCamera()যোগ করা হয়েছে।VehicleLocation.getUpdateTime()এখন একটি Long ভেরিয়েবল রিটার্ন করে যা টাইমস্ট্যাম্প (মিলিসেকেন্ডে) নির্দেশ করে।টোকেন তৈরির জন্য
AuthTokenFactoryইন্টারফেসটিকে একটিমাত্র মেথড উন্মুক্ত করে সরলীকরণ করা হয়েছে। Java7-এর সাথে ব্যাকওয়ার্ড কম্প্যাটিবিলিটি সক্ষম করতেAuthTokenFactoryএকটি ইন্টারফেস থেকে অ্যাবস্ট্রাক্ট ক্লাসে পরিবর্তন করা হয়েছে। এই পরিবর্তনটি ব্যাকওয়ার্ড কম্প্যাটিবল, কিন্তু একক সার্ভিস টোকেন তৈরির পুরোনো মেথডগুলো ডেপ্রিকেটেড হয়ে গেছে এবং অবশেষে সরিয়ে ফেলা হবে।
বাস্তবায়ন পরিবর্তন
অ্যাসেটগুলো এখন আইকনের কেন্দ্রে কেন্দ্রীভূত করা হয়েছে, ফলে শ্যাডো অফসেট দূর হয়েছে।
মনিটর করা ট্রিপের স্ট্যাটাসের জন্য অপেক্ষা না করে
JOURNEY_SHARING onStartTripMonitoring()এsetState।ট্রিপের ডেটা অসঙ্গত থাকলেও, এটি প্রথম ট্রিপের ডেটা আপডেটের জন্য সর্বদা ডেটা ফেরত দেয়।
Android Map Utils-কে একটি প্রোভাইডেড ডিপেন্ডেন্সি হিসেবে যুক্ত করা হয়েছে।
বাগ সংশোধন
- grpc keep-এর জন্য ত্রুটিপূর্ণ proguard এক্সপোর্ট সিনট্যাক্স ঠিক করা হয়েছে।
v0.7.0 (আগস্ট ৭, ২০১৯)
নতুন বৈশিষ্ট্য
- জার্নি শেয়ারিং-এর জন্য একাধিক গন্তব্যের সুবিধা।
এপিআই পরিবর্তন
ConsumerTripCallbackএর জন্য নতুন পদ্ধতিসমূহ।-
onTripIntermediateDestinationsUpdated(). -
onTripETAToNextTripWaypointUpdated().
-
নতুন
ConsumerControllerমেথডসমূহ।-
getIntermediateDestinations()। -
setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
-
নতুন
TripStatuses।-
TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION. -
TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
-
নতুন
TripWaypointব্যবহারকারীরা।-
getETAMillis(). -
getDistanceMeters().
-
TripInfoক্লাসটি যোগ করা হয়েছে।- আপনি
ConsumerTripManager.getActiveTripInfo()ব্যবহার করে সক্রিয় ট্রিপটিরTripInfoপেতে পারেন।
- আপনি
WaypointType.INTERMEDIATE_DESTINATIONযোগ করা হয়েছে।MarkerType.TRIP_INTERMEDIATE_DESTINATIONযোগ করা হয়েছে।ENROUTE_TO_PICKUP,ARRIVED_AT_PICKUP,ENROUTE_TO_DROPOFFএবংCOMPLETEConsumerMapStatesএকত্রিত করেConsumerMapState.JOURNEY_SHARINGতৈরি করা হয়েছে।StateChangeCallbacksআপডেট করা হয়েছে।onStateJourneySharing()যোগ করা হয়েছে।onStateWaitingForPickup(),onStateDriverArrived(),onStateEnroute(), এবংonStateEndofTrip()সরিয়ে ফেলা হয়েছে।
বাগ সংশোধন
একটি বাগ সংশোধন করা হয়েছে যেখানে কোনো সক্রিয় ট্রিপের মাঝখান থেকে (রুটের শুরু থেকে নয়) ট্রিপ মনিটরিং শুরু হলে রুটটি গাড়ির অবস্থান অনুযায়ী ছাঁটা হতো না।
একটি বাগ সংশোধন করা হয়েছে যেখানে TripManager ইতিমধ্যেই ট্রিপ ডেটা সংগ্রহ করার পরে, Tripmanager-এ নিবন্ধিত লিসেনারদের জন্য ট্রিপ কলব্যাকগুলি আহ্বান করা হতো না।
ক্যামেরা জুমে এখন শুধুমাত্র সক্রিয় রুট এবং পরবর্তী ট্রিপ ওয়েপয়েন্ট (ট্রিপের অন্তর্গত ওয়েপয়েন্ট) অন্তর্ভুক্ত থাকবে। অবশিষ্ট অংশ দেখা গেলেও, জুমে তা কখনোই অন্তর্ভুক্ত হবে না। পূর্বে, যখন গাড়িটি পিকআপের পথে থাকত অথবা পিকআপে পৌঁছাত, তখন ড্রপ-অফ পয়েন্টটি জুমে অন্তর্ভুক্ত হতো। এখন থেকে এটি আর প্রযোজ্য হবে না।
উন্নতি
অবশিষ্ট শূন্যতম ওয়েপয়েন্টটিতে ড্রাইভারের ডেটা পূরণ করুন (অবশিষ্ট ওয়েপয়েন্টের তালিকাটি
ConsumerTripCallback.onTripRemainingWaypointsUpdatedএবংTripInfo.getRemainingWaypoints()থেকে ফেরত আসে)।তালিকার প্রথম ওয়েপয়েন্টের আনুমানিক পৌঁছানোর সময় (ETA) পরিবর্তিত হলে বাকি সব ওয়েপয়েন্টের ETA আপডেট করুন।
ড্রাইভার পিকআপে পৌঁছালেই কেবল অটোক্যামেরা পুনরায় চালু করুন। পূর্বে, প্রতিটি ট্রিপের অবস্থা পরিবর্তনের সাথে সাথে অটোক্যামেরা পুনরায় চালু হয়ে যেত। অটোক্যামেরা এখনও ডিফল্টরূপে চালু থাকে।
startTripMonitoring()ফাংশনটি নতুন করে কল না করে যদি একটি নতুন সক্রিয় ট্রিপ সেট করা হয়, তাহলে অটোক্যামেরা পুনরায় চালু হবে না।
v0.6.1 (২৬শে জুন, ২০১৯)
নতুন বৈশিষ্ট্য
- যাত্রা ভাগাভাগির জন্য কারপুল সুবিধা।
এপিআই পরিবর্তন
ConsumerController.getConsumerMapStyle()এখনTask<ConsumerMapStyle>এর পরিবর্তেConsumerMapStyleরিটার্ন করে।PolylineStyle.setZIndex()যোগ করা হয়েছে।
বাগ সংশোধন
এখন রুট অ্যানিমেশন শুধুমাত্র তখনই ঘটে যখন রুট সেগমেন্টটি সিঙ্ক থাকে, ফলে ব্যবহারকারীর অভিজ্ঞতা উন্নত হয়।
ড্রাইভারের অবস্থানের আপডেটগুলো কাছাকাছি সময়ে হলে, অ্যানিমেশন ইন্টারপোলেশনের সময় গাড়ির যে 'ঝিকিমিকি' সমস্যা দেখা দিত, তা ঠিক করা হয়েছে।
একটি সক্রিয় ট্রিপের মাঝপথে ট্রিপ মনিটরিং শুরু হলে, যানবাহনটি তার সবচেয়ে হালনাগাদ অবস্থানের পরিবর্তে রুটের শুরু থেকে যাত্রা শুরু করত—এই বাগটি সংশোধন করা হয়েছে।
যখন দুটি রুট একে অপরের উপর দিয়ে যায়, তখন সক্রিয় রুটের পলিলাইনটিকে অবশিষ্ট রুটের উপরে প্রদর্শন করুন।
উন্নতি
- এখন gRPC
Statusক্লাসটিকে তার অব্যক্ত মেথডগুলোসহ প্রকাশ করুন।
v0.5.1.01 (১৭ মে, ২০১৯)
নতুন বৈশিষ্ট্য
- জার্নি শেয়ারিং-এর জন্য ধারাবাহিক সমর্থন।
এপিআই পরিবর্তন
- নতুন
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 কলে ব্যবহৃত ভাষা সেট করার সুযোগ দেয় (উদাহরণস্বরূপ, পিকআপ পয়েন্টের বিবরণের জন্য)।
উন্নতি
- ড্রপঅফ সিলেকশন স্টেটে এখন একটি ড্র্যাগযোগ্য পিন রয়েছে।
-
INITIALIZEঅবস্থায় ক্যামেরা অ্যানিমেশন সরানো হয়েছে। -
ManagedChannelBuilderAndroidChannelBuilderদ্বারা প্রতিস্থাপন করা হয়েছে।