इस सेक्शन में, Android के लिए Consumer SDK के रिलीज़ नोट दिए गए हैं.
सूचना: एपीआई लेवल 23, 24, और 25 के लिए सहायता बंद की जा रही है
मोबाइल ओएस के वर्शन के साथ काम करने से जुड़ी नीति के मुताबिक, हम Android के वर्शन 6 और 7 (एपीआई लेवल 23, 24, और 25) के लिए, सहायता बंद कर रहे हैं. ऐसा Consumer SDK for Android के आने वाले मुख्य वर्शन में किया जाएगा.
Android के लिए Consumer SDK के ऐसे वर्शन जो 2025 की चौथी तिमाही से रिलीज़ किए जाएंगे, उनमें Android 8 (एपीआई लेवल 26) का इस्तेमाल किया जा सकेगा. एसडीके के पुराने वर्शन, Android 6 और 7 पर काम करते रहेंगे.
अगर आपकी डिपेंडेंसी में वर्शन नंबर नहीं दिया गया है, तो आपका IDE, एसडीके टूल का सबसे नया वर्शन लोड करेगा. साथ ही, आपके ऐप्लिकेशन की नई बिल्ड, Android 6 और 7 के साथ काम नहीं करेंगी.
अपने ऐप्लिकेशन की बिल्ड डिपेंडेंसी में, Android के लिए Consumer SDK का वर्शन तय करें. इससे आपको यह कंट्रोल करने में मदद मिलेगी कि ऐप्लिकेशन के नए वर्शन के लिए, न्यूनतम सपोर्ट किया जाने वाला ओएस कब बढ़ाया जाए.
4.1.0 (26 मई, 2026)
- आंतरिक सुधार: इंटरनल डेटा स्टोरेज को Jetpack DataStore पर माइग्रेट किया गया.
डिपेंडेंसी और कॉन्फ़िगरेशन में बदलाव
- Kotlin डिपेंडेंसी के वर्शन को v2.3.0 पर अपग्रेड किया गया है.
- Android Gradle प्लगिन को 8.13.2 पर अपग्रेड किया गया है.
- Gradle को 8.13 पर अपग्रेड किया गया.
- Desugar लाइब्रेरी को 2.1.5 पर अपग्रेड किया गया.
- Maps SDK को 20.0.0 पर ले जाया गया है. साथ ही, GMS Core की इन डिपेंडेंसी को अपडेट किया गया है:
- 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 अक्टूबर, 2025)
- आंतरिक सुधार.
3.2.0 (26 जून, 2025)
- इंटरनल लॉगिंग में सुधार किए गए.
डिपेंडेंसी और कॉन्फ़िगरेशन में बदलाव
- Android के लिए Consumer SDK के 3.2.0 वर्शन और इसके बाद के वर्शन का इस्तेमाल करने वाले ऐप्लिकेशन को Kotlin 2.1 पर अपग्रेड करना होगा.
गड़बड़ियां ठीक की गईं
- ऐनिमेशन से जुड़े फ़ैसले लेने के लिए, हवाई दूरी के बजाय पॉलीलाइन की लंबाई का इस्तेमाल करता है.
3.1.0 (10 मार्च, 2025)
- इंटरनल लॉगिंग में सुधार किए गए.
3.0.0 (6 दिसंबर, 2024)
डिपेंडेंसी और कॉन्फ़िगरेशन में बदलाव
- Android के लिए Consumer SDK के वर्शन 3.0.0 और इसके बाद के वर्शन का इस्तेमाल करने वाले ऐप्लिकेशन को Kotlin 2.0 पर अपग्रेड करना होगा. Android Consumer SDK 3.0 माइग्रेशन गाइड देखें.
- Consumer SDK के लिए targetSdk अब Android 14 (एपीआई लेवल 34) है. अगस्त 2024 से, Google Play Store पर डिप्लॉय होने वाले सभी ऐप्लिकेशन के लिए यह ज़रूरी है. Google Play के टारगेट एपीआई लेवल की ज़रूरी शर्तें पूरी करना लेख पढ़ें.
2.99.0 (25 नवंबर, 2024)
गड़बड़ियां ठीक की गईं
ConsumerApi.cleanUp()को पूरा होने में ज़्यादा समय लगने पर होने वाली एएनआर गड़बड़ी को ठीक किया गया है. रिलीज़ को इंटिग्रेट करने के बाद, इसे धीरे-धीरे रोल आउट किया जाएगा. शुरुआत में, इसे 0% पर रोल आउट किया जाएगा.- इस अपडेट में, उस समस्या को ठीक किया गया है जिसमें ड्राइवर को "INTERNAL" कोड और "Panic! यह एक बग है!". रिलीज़ को इंटिग्रेट करने के बाद, इसे धीरे-धीरे रोल आउट किया जाएगा. शुरुआत में, इसे 0% पर रोल आउट किया जाएगा.
2.3.0 (2 अगस्त, 2024)
एपीआई में हुए बदलाव
क्लाउड पर मैप की स्टाइलिंग की सुविधा जोड़ें. इससे, उपयोगकर्ताओं के लिए उनकी पसंद के मुताबिक रोड मैप का अनुभव बनाया जा सकता है. इसके लिए, आपको मैप की स्टाइल में बदलाव करने पर, हर बार अपने ऐप्लिकेशन के कोड को अपडेट करने की ज़रूरत नहीं होगी. ज़्यादा जानकारी के लिए, क्लाउड पर मैप की स्टाइलिंग की सुविधाओं का इस्तेमाल करके, मैप को स्टाइल करना लेख पढ़ें.
getServerTimeMillis()मेंVehicleLocationतरीका जोड़ें, ताकि यह पता लगाया जा सके कि Fleet Engine को डिवाइस की जगह की जानकारी का अपडेट कब मिला.
2.2.0 (7 मई, 2024)
एपीआई में हुए बदलाव
- Jetpack Compose इंटिग्रेशन के लिए, सहायता एपीआई जोड़ा गया. यह सुविधा एक्सपेरिमेंट के तौर पर उपलब्ध है. Jetpack Compose के साथ इंटिग्रेट करने के बारे में ज़्यादा जानने के लिए, अपने प्रतिनिधि से संपर्क करें.
2.1.0 (17 जनवरी, 2024)
गड़बड़ियां ठीक की गईं
- इस अपडेट में, उस क्रैश की समस्या को ठीक किया गया है जो ऐप्लिकेशन के लाइफ़साइकल के दौरान, एसडीके टूल को एक से ज़्यादा बार शुरू करने पर होती है.
एपीआई में हुए बदलाव
- एसडीके (
ConsumerGoogleMap.getGoogleMap()) से बनाए गएGoogleMapइंस्टेंस को वापस पाने का तरीका बताता है. - इस एपीआई की मदद से, एसडीके से बनाए गए
Markerइंस्टेंस को वापस पाया जा सकता है. ये इंस्टेंस, वाहन (ConsumerController.getConsumerMarker()) को दिखाते हैं. - इस एपीआई की मदद से, यात्रा शेयर करने (
ProjectedRouteEta) के दौरान समय और दूरी के लिए, क्लाइंट के अनुमानित अपडेट पाए जा सकते हैं.
1.99.2 (3 नवंबर, 2023)
ऐप्लिकेशन से अलग किसी रिमोट प्रोसेस से SDK टूल को शुरू करने पर होने वाले क्रैश की समस्या ठीक की गई है.
कैमरे का ऐनिमेशन चलाते समय, ऐप्लिकेशन क्रैश होने की समस्या को ठीक किया गया है. ऐसा तब होता है, जब पैडिंग के लिए वर्टिकल या हॉरिज़ॉन्टल स्पेस नहीं होता है. यह समस्या सिर्फ़ मैप रेंडर करने वाले नए सिस्टम में होती है.
इस अपडेट में उस बग को ठीक किया गया है जिसकी वजह से, एक ही सड़क पर की जाने वाली दो यात्राओं में से पहली यात्रा का कुछ हिस्सा कट जाता था.
समस्याएं
- अगर एपीआई इंस्टेंस पहले से मौजूद है, तो
ConsumerApi.initialize()को शुरू करने पर अपवाद दिखता है. इस समस्या को हल करने के लिए, सबसे पहलेConsumerApi.getInstance()को कॉल करें. इसके बाद, यह पता लगाने के लिए कि एपीआई इंस्टेंस पहले से मौजूद है या नहीं,Taskका आकलन करें.
2.0.0 (15 सितंबर, 2023)
सूचना: नुकसान पहुंचा सकने वाले बदलाव
एपीआई लेवल की ज़रूरी शर्त को 21 से बढ़ाकर 23 कर दिया गया है.
Maps SDK टूल के वर्शन की ज़रूरी शर्तें अपडेट की गई हैं. अब v17.0.0 के बजाय v18.1.0 का इस्तेमाल करना होगा
Kotlin स्टैंडर्ड लाइब्रेरी के ज़रूरी वर्शन को v1.6.10 से v1.9.0 पर अपडेट किया गया है
Google Play services की डिपेंडेंसी के वर्शन अपडेट करना
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 कर दिया गया है
इस अपडेट में, पहले बंद किए जा चुके इन एपीआई को हटा दिया गया है:
ConsumerTrip,ConsumerTripCallback,ConsumerTripManager,ConsumerTripOptions. इन्हेंTripModel,TripModelCallback,TripModelManager, औरTripModelOptionsसे बदल दिया गया है.Consumer SDK का इस्तेमाल करने वाले ऐप्लिकेशन में अब
targetSdkVersionया उससे बाद के वर्शन वाला एपीआई 31 औरcompileSdkVersionया उससे बाद के वर्शन वाला एपीआई 33 होना चाहिए.Consumer SDK का इस्तेमाल करने वाले ऐप्लिकेशन को अब Java 8 लाइब्रेरी के साथ काम करने की सुविधा चालू करनी होगी. अपडेट करने के निर्देशों के लिए, https://developer.android.com/studio/write/java8-support पर जाएं.
Proguard या Dexguard का इस्तेमाल करने वाले ऐप्लिकेशन को R8 पर माइग्रेट करना होगा. ज़्यादा जानकारी के लिए, https://developer.android.com/build/shrink-code पर जाएं.
Consumer SDK का इस्तेमाल करने वाले ऐप्लिकेशन को, डिसुगरिंग की सुविधा चालू करनी होगी. निर्देशों के लिए, https://developer.android.com/studio/write/java8-support#library-desugaring पर जाएं.
अगर एपीआई का कोई इंस्टेंस पहले से बना हुआ है, तो अब
ConsumerApi.initialize()तरीके को लागू करने पर एक अपवाद दिखेगा.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 रेंडरर के नए वर्शन का अनुरोध करने की सुविधा देता है. ज़्यादा जानकारी के लिए, नया मैप रेंडरर देखें.
यह Maps SDK के 18.1.0(शामिल है) से लेकर 19.0.0(शामिल नहीं है) वर्शन के साथ काम करता है.
यह SDK टूल और Google के बैकएंड के बीच इंटरनल कम्यूनिकेशन के लिए, "समयसीमा खत्म हो गई" गड़बड़ी को ठीक करता है.
छोटी स्क्रीन और पिक्चर में पिक्चर मोड में रेंडरिंग से जुड़ी समस्या ठीक की गई है.
माइग्रेशन गाइड
1.99.1 (31 अगस्त, 2023)
गड़बड़ियां ठीक की गईं
एसडीके होस्ट करने वाली गतिविधि या फ़्रैगमेंट के बंद होने पर होने वाले क्रैश की समस्या ठीक की गई.
MapView के डाइमेंशन 0 (ऊंचाई या चौड़ाई) होने पर होने वाली क्रैश की समस्या को ठीक किया गया है.
इस अपडेट में, रास्ते की पॉलीलाइन पर वाहन की जगह की जानकारी दिखाने के दौरान ऐप्लिकेशन क्रैश होने की समस्या को ठीक किया गया है.
प्रॉडक्ट को बेहतर बनाने के सुझाव
- यह कुकी, होस्ट ऐप्लिकेशन को साइडलोड किए जाने पर एसडीके को क्रैश होने से रोकती है. साथ ही, यह तब भी काम करती है, जब डिफ़ॉल्ट विज़ुअल संसाधन मौजूद न हों.
1.99.0 (22 जून, 2023)
गड़बड़ियां ठीक की गईं
छोटी स्क्रीन और पिक्चर में पिक्चर मोड के लिए, रेंडरिंग से जुड़ी समस्या ठीक की गई है.
इस अपडेट में, यात्रा शेयर करने के दौरान वाहन के फ़्लिकर होने की समस्या को ठीक किया गया है.
1.2.1 (7 जून, 2023)
गड़बड़ियां ठीक की गईं
- इस अपडेट में, यात्रा शेयर करने के दौरान वाहन के फ़्लिकर होने की गड़बड़ी को ठीक किया गया है.
1.2.0 (21 नवंबर, 2022)
गड़बड़ियां ठीक की गईं
- उस गड़बड़ी को ठीक किया गया है जिसकी वजह से
onTripActiveRouteTrafficUpdatedकॉलबैक में ट्रैफ़िक की जानकारी नहीं दिखती थी.
नई सुविधाएं
- "ट्रैफ़िक की जानकारी के साथ पॉलीलाइन" सुविधा अब सामान्य रूप से उपलब्ध है.
1.1.2 (27 अक्टूबर, 2022)
गड़बड़ियां ठीक की गईं
- इस बग को ठीक किया गया है. इसकी वजह से, किसी
TripModelके लिएJourneySharingSessionको एक से ज़्यादा बार शुरू करने पर, रास्ते की पॉलीलाइन गायब हो जाती थी.
सूचना: Android 5 के लिए सहायता बंद की जा रही है (25 जुलाई, 2022)
हम एसडीके टूल के v1.1.1 वर्शन के लिए, Android 5 पर चलने वाले ऐप्लिकेशन को एक साल तक और सहायता देंगे. यह सहायता, एपीआई लेवल 21 और 22, दोनों के लिए उपलब्ध होगी.
इसका क्या मतलब है:
आपके Android ऐप्लिकेशन पर काम करने वाला Consumer SDK, 30 जून, 2023 तक कम से कम Android 5 (एपीआई लेवल 21) के साथ काम करेगा.
हम 30 जून, 2023 के बाद, सिर्फ़ Android के एपीआई लेवल 23 और इसके बाद के वर्शन के साथ काम करेंगे. दूसरे शब्दों में, हम उस तारीख के बाद सभी एसडीके वर्शन के लिए, Android के एपीआई लेवल 21 और 22 के साथ काम करने की सुविधा बंद कर देंगे. इसका मतलब है कि किसी भी SDK टूल के वर्शन (इसमें 4.x भी शामिल है) में Android 21 या 22 से जुड़ी गड़बड़ियों को ठीक नहीं किया जाएगा. साथ ही, हम इस बात की गारंटी नहीं देते कि SDK टूल सही तरीके से काम करेंगे.
v1.1.1 (25 जुलाई, 2022)
Dependency change
- Android के लिए, कम से कम ज़रूरी एपीआई लेवल को 21 पर डाउनग्रेड करता है.
v1.1.0 (28 अप्रैल, 2022)
- आंतरिक सुधार.
v1.0.19 (17 मार्च, 2022)
गड़बड़ियां ठीक की गईं
ConsumerApiक्लास में मेमोरी लीक की समस्या को ठीक किया गया है.
v1.0.14 (30 नवंबर, 2021)
अब Android के एपीआई लेवल 23 या उसके बाद के लेवल पर ही ऐप्लिकेशन काम करेगा.
एपीआई में हुए बदलाव
ConsumerTripऔरConsumerTripManagerक्लास में किए गए बदलाव.- कुछ तरीकों के नाम बदले गए हैं, ताकि उनके मतलब को आसानी से समझा जा सके. साथ ही, उन्हें iOS प्लैटफ़ॉर्म के साथ अलाइन किया जा सके.
ConsumerTripCallback,ConsumerTrip, औरTripInfoमें बदलाव.iOS के साथ समानता बनाए रखने के लिए, कुछ क्लास के नाम बदले गए हैं.
ConsumerTrip,ConsumerTripManager, औरConsumerTripOptionsको बंद करने के लिए,TripModel,TirpModelManager, औरTripModelOptionsको लॉन्च किया गया.कुछ तरीकों के नाम बदले गए. तरीकों के बारे में ज़्यादा बेहतर तरीके से बताने के लिए, JavaDoc टिप्पणियों में बदलाव किया गया है या उन्हें जोड़ा गया है.
गड़बड़ी ठीक करने की सुविधा को बेहतर बनाया गया है.
स्टाइल को पसंद के मुताबिक बनाना
लेगसी रैपर बंद किए गए
MarkerStyleOptionsऔरPolylineStyleOptionsको बंद कर दिया गया है. इनकी जगहMarkerOptionsऔरPolylineOptionsने ले ली है. ये दोनों, Maps SDK के साथ शेयर किए जाते हैं.
क्रैश मॉनिटरिंग
क्रैश का पता लगाने और लॉग करने की सुविधा जोड़ी गई.
- इस सुविधा से ऑप्ट आउट करने के लिए, एक विकल्प जोड़ा गया है. ऐसा क्रैश मॉनिटरिंग के लिए, दुनिया भर में किए जा रहे बड़े बदलाव के तहत किया गया था.
पुष्टि करने के तरीके में बदलाव
- पुष्टि करने वाले इंटरफ़ेस से ग़ैर-ज़रूरी तरीके हटाएं.
ServiceTypeपैरामीटर को हटा दिया गया है.
v0.9.28 (18 मई, 2021)
एपीआई में हुए बदलाव
- सभी
ConsumerTripCallbackतरीकों को अपडेट किया गया है, ताकिTripInfoको पैरामीटर के तौर पर इस्तेमाल किया जा सके. ConsumerTrip.isRefreshing()जोड़ा गया है. इससे पता चलता है किConsumerTrip, Fleet Engine से यात्रा की नई जानकारी के साथ खुद को अपडेट कर रहा है या नहीं.ConsumerTripCallback.onTripRemainingRouteDistanceUpdated()को जोड़ा गया.ConsumerTripCallback.onTripRemainingRouteUpdated()को जोड़ा गया.- Guava के रिटर्न टाइप (
ImmutableSet,ImmutableList) कोjava.utilके बराबर की क्लास से बदलें. पैकेज के नाम में बदलाव:
- com.google.android.libraries.ridesharing.common.AuthTokenContext -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenContext
- com.google.android.libraries.ridesharing.common.AuthTokenFactory -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenFactory
com.google.android.libraries.ridesharing.common.FleetEngineServiceType -> com.google.android.libraries.ridesharing.consumer.auth.FleetEngineServiceType - com.google.android.libraries.ridesharing.common.model.Trip
-> com.google.android.libraries.ridesharing.consumer.model.Trip - com.google.android.libraries.ridesharing.common.model.Vehicle -> com.google.android.libraries.ridesharing.consumer.model.Vehicle
लागू करने से जुड़े बदलाव
- रेस कंडीशन की समस्या ठीक की गई है. इस समस्या में, एसडीके तैयार होने से पहले ही मैप के साथ इंटरैक्ट करने पर, एसडीके क्रैश हो सकता था.
- एसडीके में अब
io.grpcकी ऐसी कॉपी नहीं है जिसे ओब्फ़स्केट नहीं किया गया है. - कुछ डिवाइसों पर ट्रैफ़िक की पॉलीलाइन के टिमटिमाने की गड़बड़ी को ठीक किया गया. ट्रैफ़िक सेगमेंट अब गोल किनारों वाले होंगे.
v0.9.15 (7 अक्टूबर, 2020)
एपीआई में हुए बदलाव
- इस रिलीज़ में, ट्रैफ़िक की जानकारी देने वाली पॉलीलाइन की सुविधा जोड़ी गई है.
-
TripInfo.getActiveRouteTraffic()औरTripInfo.getRemainingRouteTraffic()को जोड़ा गया.- ट्रैफ़िक में बदलाव होने पर,
ConsumerTripCallback.onTripActiveRouteTrafficUpdated()औरConsumerTripCallback.onTripRemainingRouteTrafficUpdated()को जोड़ा गया. - ट्रैफ़िक को पसंद के मुताबिक बनाने के लिए
PolylineStyleOptionsको जोड़ा गया (setTrafficEnabled(),setTrafficColorNoData(),setTrafficColorNormal(),setTrafficColorSlow(),setTrafficColorTrafficJam()). PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITIONको दिखाया गया.TripWaypoint.getTrafficData()को जोड़ा गया.TrafficDataडेटा टाइप जोड़ा गया.ConsumerController.hideAllSessions()को जोड़ा गया.ConsumerController.showSession()अब किसी आर्ग्युमेंट के तौर पर शून्य स्वीकार नहीं करता.
- ट्रैफ़िक में बदलाव होने पर,
v0.9.9 (15 जुलाई, 2020)
एपीआई में हुए बदलाव
- यह एक अहम बदलाव है. इसमें मॉड्यूलर आर्किटेक्चर को शामिल किया गया है. साथ ही, डेटा-ओनली लेयर (उदाहरण के लिए,
ConsumerTripManager) और यूज़र इंटरफ़ेस लेयर (उदाहरण के लिए,JourneySharingSession) के बीच के संबंध को ज़्यादा साफ़ तौर पर बताया गया है. नए आर्किटेक्चर पर माइग्रेट करने के बारे में जानकारी पाने के लिए, मॉड्यूलर आर्किटेक्चर पर माइग्रेट करने से जुड़ी गाइड देखें. -ConsumerTripऑब्जेक्ट अबConsumerTripManager.getTrip()से मिलता है.ConsumerTrip.unregisterCallbackका नाम बदलकरConsumerTrip.unregisterTripCallbackकर दिया गया है.ConsumerTrip.isCallbackRegisteredका नाम बदलकरConsumerTrip.isTripCallbackRegisteredकर दिया गया है.ConsumerTrip.setConsumerTripOptions()औरConsumerTrip.getConsumerTripOptions()को जोड़ा गया.ConsumerTrip.setAutoRefreshInterval()को हटा दिया गया है.
- यात्रा की जानकारी शेयर करने वाले एपीआई हटा दिए गए हैं.
- वाहन के घनत्व का मैप हटा दिया गया है.
- यात्रा की झलक दिखाने की सुविधा हटा दी गई है.
- पिकअप की सुविधा चुनने की स्थिति को हटाया गया.
- ड्रॉपऑफ़ चुनने की स्थिति को हटाया गया.
- हमने मार्कर के इन टाइप को हटा दिया है:
SELECTED_PICKUP_POINT,SUGGESTED_PICKUP_POINT,HIGHLIGHTED_PICKUP_POINT, औरSELECTED_DROPOFF_POINT.
OnConsumerMarkerClickCallbackऔरConsumerMapReadyCallbackको इंटरफ़ेस से बदलकर ऐब्स्ट्रैक्ट क्लास कर दिया गया है.ConsumerController.getCameraUpdate(),ConsumerController.isAutoCameraEnabled(), औरConsumerController.enableAutoCamera()को जोड़ा गया.- कस्टम फ़्लोटिंग ऐक्शन बटन और उससे जुड़े तरीकों (
ConsumerController.isMyLocationFabEnabledऔरConsumerController.setMyLocationFabEnabled) को हटा दिया गया है.
लागू करने से जुड़े बदलाव
ConsumerTripCallbackके साथ रजिस्टर किया गया या बिना रजिस्टर किया गयाLifecycleOwner, अबTripStatus.COMPLETEयाTripStatus.CANCELEDपर अपने-आप अनरजिस्टर नहीं होता.- AutoCamera की सुविधा अब डिफ़ॉल्ट रूप से चालू रहती है. यह सुविधा, अपने-आप फिर से चालू या बंद नहीं होती.
इससे पहले,
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
v0.9.1 (23 मार्च, 2020)
एपीआई में हुए बदलाव
TripInfo.getVehicleId(),TripInfo.getNumberOfPassengers(),TripInfo.getIntermediateDestinationIndex(),TripInfo.getTripActiveRoute(), औरTripInfo.getTripRemainingRoute()को जोड़ा गया.ConsumerApiको शुरू करने के दौरान इस्तेमाल की गईoptionsक्लास जोड़ी गई है. इससेFleetEngineपते को डाइनैमिक तरीके से सेट किया जा सकता है. अगर एपीआई कोFleetEngineवैल्यू के साथ कॉल नहीं किया जाता है, तो यह Android मेनिफ़ेस्ट से वैल्यू फ़ेच करने की कोशिश करता है. अगर ऐसा नहीं होता है, तो यह डिफ़ॉल्ट वैल्यू का इस्तेमाल करता है.
प्रॉडक्ट को बेहतर बनाने के सुझाव
- यात्रा का स्टेटस
ARRIVED_AT_PICKUPहोने पर, रास्ते की पॉलीलाइन नहीं दिखती है. - रास्ते से भटके वाहन को ट्रैक करने की सुविधा को बेहतर बनाया गया है. इसके लिए, DriverSDK 1.15 की ज़रूरत होती है:
- जब वाहन पिकअप पॉइंट से आगे निकल जाता है, तो वाहन ट्रैकिंग की सुविधा, वाहन को रास्ते पर नहीं ले जाती.
- वाहन को ट्रैक करने की सुविधा की मदद से, सड़क से बाहर मौजूद वाहन को दिखाया जा सकता है. उदाहरण के लिए, ऐसे पार्किंग लॉट में मौजूद वाहन को मैप नहीं किया गया है.
- अब ड्राइवर के डेस्टिनेशन और Fleet Engine में मौजूद डेस्टिनेशन के मेल न खाने पर, वाहन का आइकॉन अपडेट हो जाता है.
v0.8.6 (16 दिसंबर, 2019)
एपीआई में हुए बदलाव
TripInfo.getVehicleLocation()को जोड़ा गया.ConsumerMapViewअब फ़ाइनल नहीं है.
लागू करने से जुड़े बदलाव
- अब ऐक्टिव लेग की बची हुई दूरी का हिसाब, लोकल स्नैपिंग के बजाय सर्वर की दूरी (ड्राइवर की बताई गई दूरी + जहां लागू हो वहां स्टैटिक रूट) का इस्तेमाल करके लगाया जाता है. इस बदलाव से, बची हुई दूरी की ज़्यादा सटीक वैल्यू मिलती हैं.
अन्य बदलाव
नई डिपेंडेंसी ज़रूरी हैं. ज़्यादा जानकारी के लिए, .pom फ़ाइल देखें.
- com.google.android.datatransport:transport-api:2.0.0
- com.google.android.datatransport:transport-backend-cct:2.0.2
- com.google.android.datatransport:transport-runtime:2.0.0
यात्रा के अनुरोध में लगने वाले समय के लिए लॉग जोड़े गए.
यात्रा के जवाब से जुड़ी गड़बड़ियों के लिए लॉग जोड़े गए.
नोट
- Android के लिए Consumer SDK का वर्शन 0.8.1, जेटिफ़ाइड ज़िप आर्काइव के तौर पर शिप किया जाता है. इसे डी-जेटिफ़ाई करने के तरीके के बारे में जानकारी के लिए, Jetifier: Reverse mode देखें.
v0.8.1 (13 सितंबर, 2019)
नई सुविधाएं
ConsumerMapView के लिए सहायता.
ODRD के आर्टफ़ैक्ट अब .aar zipfile के बजाय, Maven रिपॉज़िटरी में शिप किए जाते हैं. ज़्यादा जानकारी के लिए, अपने ऐप्लिकेशन में Consumer SDK टूल जोड़ना लेख पढ़ें.
एपीआई में हुए बदलाव
ConsumerController.disableAutoCamera()कोcenterMapForState()के ऑपज़िट फ़ंक्शन के तौर पर जोड़ा गया.VehicleLocation.getUpdateTime()अब एक Long वैल्यू दिखाता है, जो टाइमस्टैंप (मिलीसेकंड में) को दिखाती है.AuthTokenFactoryइंटरफ़ेस को आसान बनाया गया है, ताकि टोकन जनरेट करने का एक ही तरीका दिखाया जा सके. Java7 में पुराने सिस्टम के साथ काम करने की सुविधा चालू करने के लिए,AuthTokenFactoryको इंटरफ़ेस से ऐब्स्ट्रैक्ट क्लास में बदल दिया गया है. यह बदलाव, पिछले वर्शन के साथ काम करता है. हालांकि, एक सेवा के लिए टोकन जनरेट करने के पुराने तरीके अब काम नहीं करते. इन्हें आने वाले समय में हटा दिया जाएगा.
लागू करने से जुड़े बदलाव
ऐसेट अब आइकॉन के बीच में दिखती हैं. इससे शैडो ऑफ़सेट नहीं होता.
setStateसेJOURNEY_SHARING onStartTripMonitoring()पर स्विच करें. इसके लिए, आपको निगरानी में रखी गई यात्रा की स्थिति का इंतज़ार नहीं करना पड़ेगा.यह हमेशा पहली यात्रा के डेटा अपडेट के लिए डेटा दिखाता है. भले ही, यात्रा का डेटा सिंक न हो.
Android Map Utils को provided डिपेंडेंसी के तौर पर जोड़ा गया.
गड़बड़ियां ठीक की गईं
- grpc keep के लिए, proguard एक्सपोर्ट सिंटैक्स की समस्या ठीक की गई.
v0.7.0 (7 अगस्त, 2019)
नई सुविधाएं
- यात्रा की जानकारी शेयर करने की सुविधा के लिए, एक से ज़्यादा डेस्टिनेशन की सुविधा.
एपीआई में हुए बदलाव
ConsumerTripCallbackके लिए नए तरीके.onTripIntermediateDestinationsUpdated().onTripETAToNextTripWaypointUpdated().
ConsumerControllerके नए तरीके.getIntermediateDestinations().setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
नई सुविधा
TripStatuses.TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION.TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
नए
TripWaypointगेटर.getETAMillis().getDistanceMeters().
TripInfoक्लास जोड़ी गई.ConsumerTripManager.getActiveTripInfo()की मदद से, चालू यात्रा के लिएTripInfoपाया जा सकता है.
WaypointType.INTERMEDIATE_DESTINATIONको जोड़ा गया.MarkerType.TRIP_INTERMEDIATE_DESTINATIONको जोड़ा गया.मर्ज किए गए
ConsumerMapStates,ENROUTE_TO_PICKUP,ARRIVED_AT_PICKUP,ENROUTE_TO_DROPOFF, औरCOMPLETEसेConsumerMapState.JOURNEY_SHARINGबनाया गया.StateChangeCallbacksअपडेट की गई.onStateJourneySharing()को जोड़ा गया.onStateWaitingForPickup(),onStateDriverArrived(),onStateEnroute(), औरonStateEndofTrip()को हटाया गया.
गड़बड़ियां ठीक की गईं
उस बग को ठीक किया गया है जिसकी वजह से, यात्रा की निगरानी शुरू होने पर, रास्ते को वाहन की जगह के हिसाब से नहीं काटा जाता था. ऐसा तब होता था, जब यात्रा के बीच में निगरानी शुरू की जाती थी (रास्ते की शुरुआत में नहीं).
उस बग को ठीक किया गया है जिसमें TripManager के पहले से यात्रा का डेटा फ़ेच करने के बाद, TripManager पर रजिस्टर किए गए लिसनर के लिए यात्रा के कॉल बैक शुरू नहीं होते थे.
कैमरे के ज़ूम में अब सिर्फ़ चालू रास्ता और अगली यात्रा का वेपॉइंट (यात्रा से जुड़ा वेपॉइंट) शामिल होता है. भले ही, बाकी हिस्सा दिख रहा हो, ज़ूम करने पर वह कभी नहीं दिखेगा. पहले, वाहन के पिकअप के रास्ते में होने या पिकअप की जगह पर पहुंचने पर, ड्रॉप-ऑफ़ पॉइंट को ज़ूम में शामिल किया जाता था. अब ऐसा नहीं है.
प्रॉडक्ट को बेहतर बनाने के सुझाव
ड्राइवर के डेटा की मदद से, बचे हुए पहले वेपॉइंट को पॉप्युलेट करें. बचे हुए वेपॉइंट की सूची,
ConsumerTripCallback.onTripRemainingWaypointsUpdatedऔरTripInfo.getRemainingWaypoints()से मिलती है.सूची में पहले वेपॉइंट के ईटीए में बदलाव होने पर, सभी बचे हुए वेपॉइंट के ईटीए अपडेट करें.
ड्राइवर के पिकअप लोकेशन पर पहुंचने के बाद ही, ऑटोकैमरा की सुविधा को फिर से चालू करें. पहले, यात्रा की स्थिति में बदलाव होने पर, ऑटोकैमरा की सुविधा अपने-आप चालू हो जाती थी. ऑटोकैमरा की सुविधा अब भी डिफ़ॉल्ट रूप से चालू रहती है. अगर
startTripMonitoring()को कॉल किए बिना कोई नई यात्रा शुरू की जाती है, तो ऑटोकैमरा फिर से चालू नहीं होगा.
v0.6.1 (26 जून, 2019)
नई सुविधाएं
- यात्रा शेयर करने के लिए, कारपूल की सुविधा.
एपीआई में हुए बदलाव
ConsumerController.getConsumerMapStyle()अबTask<ConsumerMapStyle>के बजायConsumerMapStyleदिखाता है.PolylineStyle.setZIndex()को जोड़ा गया.
गड़बड़ियां ठीक की गईं
अब रूट का ऐनिमेशन सिर्फ़ तब दिखता है, जब रूट सेगमेंट सिंक हो जाता है. इससे उपयोगकर्ता को बेहतर अनुभव मिलता है.
ड्राइवर की जगह की जानकारी के अपडेट आस-पास होने पर, ऐनिमेशन इंटरपोलेशन के दौरान वाहन के "फ़्लिकर" होने की समस्या ठीक की गई.
हमने उस बग को ठीक कर दिया है जिसकी वजह से, यात्रा की निगरानी शुरू होने पर वाहन, रास्ते की शुरुआत में दिखता था. ऐसा तब होता था, जब यात्रा के बीच में निगरानी शुरू की जाती थी. अब वाहन, अपनी सबसे नई जगह पर दिखेगा.
जब चालू रास्ते की पॉलीलाइन, बचे हुए रास्ते की पॉलीलाइन से ओवरलैप होती है, तब चालू रास्ते की पॉलीलाइन को बचे हुए रास्ते की पॉलीलाइन के ऊपर दिखाएं.
प्रॉडक्ट को बेहतर बनाने के सुझाव
- अब gRPC
Statusक्लास को ऐसे तरीकों से दिखाएं जिन्हें छिपाया न गया हो.
v0.5.1.01 (17 मई, 2019)
नई सुविधाएं
- यात्रा की जानकारी शेयर करने की सुविधा के लिए, लगातार सहायता उपलब्ध है.
एपीआई में हुए बदलाव
- नई
ConsumerControllerक्लास.
PolylineType
| पुरानी वैल्यू | नया मान |
|---|---|
TRIP_PREVIEW_AUTO_ROUTE |
PREVIEW_AUTO_ROUTE |
TRIP_PREVIEW_TAXI_ROUTE |
PREVIEW_TAXI_ROUTE |
TRIP_PREVIEW_TRUCK_ROUTE |
PREVIEW_TRUCK_ROUTE |
TRIP_PREVIEW_TWO_WHEELER_ROUTE |
PREVIEW_TWO_WHEELER_ROUTE |
TRIP_ROUTE |
ACTIVE_ROUTE |
REMAINING_ROUTE |
ConsumerTripCallback
| पुरानी वैल्यू | नया मान |
|---|---|
onTripRouteUpdated |
onTripActiveRouteUpdated |
onTripRemainingDistanceUpdated |
onTripActiveRouteRemainingDistanceUpdated |
onTripRemainingWaypointsUpdated() |
ConsumerController
- अब राज्यों की जानकारी दिए बिना, राज्यों के लिए कॉलबैक सेट किए जा सकते हैं.
| तरीका | कॉलबैक |
|---|---|
startPickupSelection |
setPickupSelectionCallback |
startDropoffSelection |
setDropoffSelectionCallback |
startTripPreview |
setTripPreviewSelectionCallback |
ConsumerController.setLanguage(String languageCode)की मदद से, FleetEngine कॉल में इस्तेमाल की जाने वाली भाषा सेट की जा सकती है. उदाहरण के लिए, पिकअप पॉइंट की जानकारी के लिए.
प्रॉडक्ट को बेहतर बनाने के सुझाव
- ड्रॉपऑफ़ की जगह चुनने की सुविधा में अब पिन को खींचकर छोड़ने की सुविधा उपलब्ध है.
INITIALIZEस्थिति में कैमरा ऐनिमेशन हटाया गया.ManagedChannelBuilderकोAndroidChannelBuilderसे बदला गया.