Android के लिए उपभोक्ता SDK टूल के रिलीज़ नोट्स

इस सेक्शन में, 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)

डिपेंडेंसी और कॉन्फ़िगरेशन में बदलाव

2.99.0 (25 नवंबर, 2024)

गड़बड़ियां ठीक की गईं

  • ConsumerApi.cleanUp() को पूरा होने में ज़्यादा समय लगने पर होने वाली एएनआर गड़बड़ी को ठीक किया गया है. रिलीज़ को इंटिग्रेट करने के बाद, इसे धीरे-धीरे रोल आउट किया जाएगा. शुरुआत में, इसे 0% पर रोल आउट किया जाएगा.
  • इस अपडेट में, उस समस्या को ठीक किया गया है जिसमें ड्राइवर को "INTERNAL" कोड और "Panic! यह एक बग है!". रिलीज़ को इंटिग्रेट करने के बाद, इसे धीरे-धीरे रोल आउट किया जाएगा. शुरुआत में, इसे 0% पर रोल आउट किया जाएगा.

2.3.0 (2 अगस्त, 2024)

एपीआई में हुए बदलाव

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 का इस्तेमाल करने वाले ऐप्लिकेशन में अब एपीआई 31 या उसके बाद के वर्शन का targetSdkVersion और एपीआई 33 या उसके बाद के वर्शन का compileSdkVersion होना चाहिए.

  • 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 के साथ शेयर किए जाते हैं.

क्रैश मॉनिटरिंग

  • क्रैश का पता लगाने और लॉग करने की सुविधा जोड़ी गई.

    • इस सुविधा से ऑप्ट आउट करने के लिए, एक विकल्प जोड़ा गया है. ऐसा क्रैश मॉनिटरिंग के लिए, दुनिया भर में किए जा रहे बड़े प्रयास के तहत किया गया था.

पुष्टि करने के तरीके में बदलाव

  • Authentication इंटरफ़ेस से ग़ैर-ज़रूरी तरीके हटाएं.
    • 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 के साथ रजिस्टर किया गया या बिना रजिस्टर किया गया ConsumerTripCallback, अब TripStatus.COMPLETE या TripStatus.CANCELED पर अपने-आप अनरजिस्टर नहीं होता.LifecycleOwner
  • 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: रिवर्स मोड देखें.

v0.8.1 (13 सितंबर, 2019)

नई सुविधाएं

एपीआई में हुए बदलाव

  • 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 से बदला गया.