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

इस सेक्शन में, Android के लिए Consumer SDK टूल की रिलीज़ नोट शामिल हैं.

सूचना: एपीआई लेवल 23, 24, और 25 के लिए सहायता को रोकना

मोबाइल ओएस के वर्शन के लिए सहायता से जुड़ी नीति के मुताबिक, हम Android के लिए Consumer SDK टूल के आने वाले मुख्य वर्शन में, Android 6 और 7 (एपीआई लेवल 23, 24, और 25) के लिए सहायता उपलब्ध कराने की सुविधा को रोक रहे हैं.

साल 2025 की चौथी तिमाही से रिलीज़ होने वाले, Android के लिए Consumer SDK टूल के वर्शन, कम से कम Android 8 (एपीआई लेवल 26) पर काम करेंगे. SDK टूल के पुराने वर्शन, Android 6 और 7 पर काम करते रहेंगे.

अगर आपकी डिपेंडेंसी में वर्शन नंबर नहीं दिया गया है, तो आपका आईडीई सबसे नया एसडीके वर्शन लोड करेगा. साथ ही, आपके ऐप्लिकेशन के नए बिल्ड, Android 6 और 7 के साथ काम नहीं करेंगे.

अपने ऐप्लिकेशन के बिल्ड डिपेंडेंसी में, Android के लिए Consumer SDK टूल का कोई वर्शन तय करें. इससे, यह कंट्रोल किया जा सकता है कि आपके ऐप्लिकेशन के नए वर्शन के लिए, कम से कम किस ऑपरेटिंग सिस्टम (ओएस) का इस्तेमाल किया जा सकता है.

3.0.0 (06 दिसंबर, 2024)

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

2.99.0 (25 नवंबर, 2024)

गड़बड़ी ठीक की गई

  • ANR से जुड़ी उस गड़बड़ी को ठीक करता है जो 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)

गड़बड़ी ठीक की गई

  • ऐप्लिकेशन के लाइफ़साइकल के दौरान, SDK टूल को एक से ज़्यादा बार शुरू करने पर होने वाली क्रैश की समस्या को ठीक करता है.

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

  • SDK टूल (ConsumerGoogleMap.getGoogleMap()) से बनाए गए GoogleMap इंस्टेंस को वापस पाने का तरीका बताता है.
  • वाहन (ConsumerController.getConsumerMarker()) को दिखाने के लिए, SDK टूल से बनाए गए Marker इंस्टेंस को वापस पाने के लिए एपीआई को शामिल किया गया है.
  • सफ़र की जानकारी शेयर करने की सुविधा (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)

गड़बड़ी ठीक की गई

  • SDK होस्ट गतिविधि या फ़्रैगमेंट के बंद होने पर होने वाली क्रैश की समस्या को ठीक करता है.

  • MapView के डाइमेंशन 0 (ऊंचाई या चौड़ाई) होने पर होने वाली क्रैश की समस्या को ठीक करता है.

  • रास्ते के पॉलीलाइन पर वाहन की जगह को प्रोजेक्ट करते समय होने वाली क्रैश की समस्या को ठीक करता है.

प्रॉडक्ट को बेहतर बनाने के सुझाव

  • होस्ट ऐप्लिकेशन को साइडलोड करने और डिफ़ॉल्ट विज़ुअल रिसॉर्स मौजूद न होने पर, SDK टूल के क्रैश होने से रोकता है.

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)

हम SDK टूल के v1.1.1 वर्शन के लिए, Android 5 पर चलने वाले ऐप्लिकेशन के लिए एक साल की और सहायता उपलब्ध करा रहे हैं. यह सहायता, एपीआई लेवल 21 और 22, दोनों के लिए उपलब्ध है.

इसका क्या मतलब है:

  • आपके Android ऐप्लिकेशन पर चलने वाला Consumer SDK टूल, 30 जून, 2023 तक कम से कम Android 5 (एपीआई लेवल 21) पर काम करेगा.

  • हम 30 जून, 2023 के बाद, सिर्फ़ Android के एपीआई लेवल 23 और उसके बाद के वर्शन के साथ काम करेंगे. दूसरे शब्दों में, हम इस तारीख के बाद, सभी SDK वर्शन के लिए Android एपीआई लेवल 21 और 22 के साथ काम करना बंद कर देंगे. इसका मतलब है कि SDK टूल के किसी भी वर्शन (4.x के साथ-साथ) में, Android 21 या 22 से जुड़ी गड़बड़ियों को ठीक नहीं किया जाएगा. साथ ही, हम यह गारंटी नहीं देते कि SDK टूल सही तरीके से काम करेंगे.

v1.1.1 (25 जुलाई, 2022)

डिपेंडेंसी में बदलाव

  • 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)

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

  • 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 (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() अब आर्ग्युमेंट के तौर पर null स्वीकार नहीं करता.

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 के साथ रजिस्टर किया गया हो या बिना 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: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 टूल, जेटफ़ाइड zip संग्रह के तौर पर शिप होता है. इसे जेटफ़ाइ करने का तरीका जानने के लिए, Jetifier: रिवर्स मोड देखें.

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

नई सुविधाएं

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

  • centerMapForState() के उलट फ़ंक्शन के तौर पर ConsumerController.disableAutoCamera() जोड़ा गया.

  • VehicleLocation.getUpdateTime() अब एक Long वैल्यू दिखाता है, जो टाइमस्टैंप को मिलीसेकंड में दिखाता है.

  • AuthTokenFactory इंटरफ़ेस को आसान बनाया गया है, ताकि टोकन जनरेट करने का एक ही तरीका दिखाया जा सके. Java7 में पिछली रिलीज़ के साथ काम करने की सुविधा चालू करने के लिए, AuthTokenFactory को इंटरफ़ेस से बदलकर एब्स्ट्रैक्ट क्लास में बदला गया. यह बदलाव, पुराने वर्शन के साथ काम करता है. हालांकि, एक सेवा के लिए टोकन जनरेट करने के पुराने तरीके अब काम नहीं करते और इन्हें हटा दिया जाएगा.

लागू करने से जुड़े बदलाव

  • ऐसेट अब आइकॉन के बीच में दिखती हैं. इससे, शैडो ऑफ़सेट की समस्या खत्म हो जाती है.

  • setState से JOURNEY_SHARING onStartTripMonitoring() हो जाता है.

  • यात्रा के डेटा के अपडेट होने पर, हमेशा डेटा दिखाता है. भले ही, यात्रा का डेटा सिंक न हुआ हो.

  • Android Map Utils को डिपेंडेंसी के तौर पर जोड़ा गया.

गड़बड़ी ठीक की गई

  • grpc keep के लिए, प्रोगार्ड एक्सपोर्ट सिंटैक्स को ठीक किया गया.

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