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.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() को जोड़ा गया.
  • कस्टम FAB और उससे जुड़े तरीकों को हटा दिया गया है (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
  • यात्रा के अनुरोध में लगने वाले समय के लिए लॉग जोड़े गए.

  • यात्रा के जवाब से जुड़ी गड़बड़ियों के लिए लॉग जोड़े गए.

नोट

  • वर्शन 0.8.1 से, Android के लिए Consumer SDK को जेटिफ़ाइड ज़िप आर्काइव के तौर पर शिप किया जाता है. इसे डी-जेटिफ़ाई करने के तरीके के बारे में जानकारी के लिए, 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 से बदला गया.