अक्सर पूछे जाने वाले सवाल

प्रॉडक्ट के बारे में जानकारी

समस्याएं

नेटवर्क

डेटा

यूज़र इंटरफ़ेस को पसंद के मुताबिक बनाना

रूटिंग

सिम्युलेटर

वर्कफ़्लो

मोबिलिटी सेवाएं

प्रॉडक्ट के बारे में जानकारी

आपके ऐप्लिकेशन में, Navigation SDK की सेवा की शर्तों के बारे में सूचना देने वाला एक डायलॉग बॉक्स होना चाहिए. हर ड्राइवर को इसे स्वीकार करना होगा. इस डायलॉग बॉक्स में, ड्राइवर को सेवा की शर्तों से सहमत होने का विकल्प मिलता है. Navigation SDK के साथ, शर्तों की टेक्स्ट फ़ाइल दी जाती है.
Android में, शर्तों वाला डायलॉग दिखाने के लिए NavigationApi.showTermsAndConditionsDialog तरीके का इस्तेमाल करें.
iOS में, GMSNavigationServices.showTermsAndConditionsDialogIfNeededWithCompanyName को कॉल करें.
Google Maps Mobile में इस्तेमाल की जा सकने वाली सभी भाषाएं, Navigation SDK में अपने-आप उपलब्ध हो जाती हैं. किसी डिवाइस में सिस्टम की भाषा डिफ़ॉल्ट रूप से सेट होती है. कोई ऐप्लिकेशन इस सेटिंग को नहीं बदल सकता. हालांकि, ऐप्लिकेशन के पास 70 से ज़्यादा भाषाओं का ऐक्सेस होता है.

हां. Android में, LocationListener शुरू होने के बाद बैकग्राउंड में चलता रहता है. आपका ऐप्लिकेशन, सड़क के हिसाब से जगह की जानकारी को स्नैप करता रहता है और दिशा बनाए रखता है.

iOS में, बैकग्राउंड में जगह की जानकारी और दिशा के अपडेट पाने के लिए, रोड स्नैपिंग की सुविधा लागू करें. साथ ही, allowsBackgroundLocationUpdates को YES पर सेट करें.

हां. जब कोई रास्ता बनाया जाता है या उसमें बदलाव किया जाता है, तो RouteChangeListener पॉलीलाइन उपलब्ध कराता है.

नहीं, Navigation SDK के लिए डिवाइस पर Google Maps Mobile को इंस्टॉल करना ज़रूरी नहीं है.
नहीं, फ़िलहाल Navigation SDK में यह सुविधा उपलब्ध नहीं है.
हां. ट्रैफ़िक की दिशा की जानकारी डिफ़ॉल्ट रूप से उपलब्ध होती है और दिखती है.

समस्याएं

Xcode 12 में, सिम्युलेटर के लिए ऐप्लिकेशन सही तरीके से नहीं बनते. इसे किस तरह ठीक किया जा सकता है?

इस समस्या को ठीक करने के लिए, अपने Xcode प्रोजेक्ट की बिल्ड सेटिंग खोलें. इसके बाद, सिर्फ़ "iOS सिम्युलेटर" बिल्ड के लिए, Excluded Architectures में arm64 जोड़ें.

ज़्यादा जानकारी के लिए, यह StackOverflow थ्रेड देखें.

GMSMapView लोड नहीं होता है.

अगर GMSMapView लोड नहीं होता है, तो:

  • देखें कि Cloud Console में NavSDK चालू है या नहीं.
  • अगर Nav SDK इंस्टॉल है, लेकिन आपका प्रोजेक्ट Nav SDK के एपीआई का इस्तेमाल नहीं करता है, तो इसे अपनी बाइनरी से हटा दें.

नेटवर्क

Navigation SDK, कनेक्टिविटी की समस्या को कैसे ठीक करता है?
Navigation SDK, हर यात्रा के लिए रास्ते को पहले से ही कैश मेमोरी में सेव कर लेता है. पहले से कैश मेमोरी में सेव की गई जानकारी में, 15 से 20 मिनट के लिए रूट की जानकारी शामिल होती है. साथ ही, अगर ड्राइवर रूट से भटक जाता है, तो उसे अन्य रूट की जानकारी भी मिलती है. Navigation SDK, डिवाइस के जीपीएस और सेंसर का इस्तेमाल करके जगह की जानकारी का अनुमान लगाता है.
क्या ऑफ़लाइन मोड उपलब्ध है?
नहीं, Navigation SDK में फ़िलहाल ऑफ़लाइन मोड की सुविधा उपलब्ध नहीं है. हालांकि, एसडीके किसी यात्रा के लिए पहले से कैश की गई जानकारी उपलब्ध कराता है.

डेटा

क्या यात्रा शुरू करने से पहले, रास्ते में पड़ने वाले सभी स्टॉप/मंज़िलों की जानकारी देखी जा सकती है?

हां. Android में, किसी रास्ते के निर्देश वापस पाने के लिए, Navigator.getRouteSegments() को कॉल करें.

iOS में, GMSNavigator.routeLegs(read) पर कॉल करें.

क्या रास्ते की शुरुआत में, मोड़-दर-मोड़ दिशा-निर्देश की सुविधा उपलब्ध है?
हां. Navigation SDK, रास्ते के सेगमेंट की सूची उपलब्ध कराता है. इसके अलावा, ड्राइवर हेडर में मौजूद दिशा-निर्देश वाले कार्ड पर स्वाइप करके, हर दिशा-निर्देश देख सकता है.
ऐप्लिकेशन के उपयोगकर्ताओं को ईटीए की जानकारी कैसे दी जाती है?

Android में, ऐप्लिकेशन इस्तेमाल करने वाले लोगों को ईटीए की जानकारी देने के लिए, यह तरीका अपनाएं:

  1. Navigator.getTimeAndDistanceList() का इस्तेमाल करके, सभी वेपॉइंट के लिए समय और दूरी की जानकारी पाएं.
  2. इस जानकारी को क्लाइंट ऐप्लिकेशन पर फ़ॉरवर्ड करें, जैसा कि ड्राइवर के ईटीए के लिए किया जाता है.

iOS में, ऐप्लिकेशन के उपयोगकर्ताओं को ईटीए की जानकारी देने के लिए, यह तरीका अपनाएं:

  1. Navigator.getRouteSegments() का इस्तेमाल करके, यात्रा के लेग की जानकारी पाएं.
  2. यात्रा के हर चरण के लिए GMSNavigator.timeToNextDestination को कॉल करें.
  3. समय की जानकारी को क्लाइंट ऐप्लिकेशन पर उसी तरह फ़ॉरवर्ड करें जिस तरह ड्राइवर के पहुँचने का अनुमानित समय फ़ॉरवर्ड किया जाता है.
अगर नेविगेशन फ़ोरग्राउंड में नहीं है, तो क्या RoadSnappedLocationProvider का इस्तेमाल करके, ड्राइवर की मौजूदा जगह की जानकारी हासिल की जा सकती है?

हां. Android में, RoadSnappedLocationProvider डिफ़ॉल्ट रूप से बैकग्राउंड में चलता है.

iOS में, नेविगेशन को बैकग्राउंड में चालू रखने के लिए, GMSRoadSnappedLocationProviderListener के लिए लिसनर लागू करें. साथ ही, allowsBackgroundLocationUpdates प्रॉपर्टी को TRUE पर सेट करें.

क्या Navigation SDK में जियोफ़ेंसिंग की सुविधा काम करती है?

नहीं. नेविगेशन के मामले में, जियोफ़ेंस की तुलना में remainingTimeOrdistanceChangeListener बेहतर है. ऐसा हो सकता है कि जियोफ़ेंस में सड़क की ज्यामिति को शामिल न किया गया हो. साथ ही, ऐसा भी हो सकता है कि जियोफ़ेंस उस सटीक जगह पर न हो जहां ड्राइवर को जाना है.

remainingTimeOrdistanceChangeListener का इस्तेमाल करके, इस सुविधा का फ़ायदा पाया जा सकता है.

  1. कॉलबैक की फ़्रीक्वेंसी तय करने के लिए, थ्रेशोल्ड सेट करें.
  2. मंज़िल तक पहुंचने के लिए बची हुई दूरी देखना.

उदाहरण के लिए, अगर आपने थ्रेशोल्ड को 100 मीटर पर सेट किया है, तो आपको कॉलबैक तब मिलेगा, जब मंज़िल की दूरी 100 मीटर बदल जाएगी. दूरी कम होने पर, इस थ्रेशोल्ड को कम वैल्यू पर अपडेट किया जा सकता है. इससे आपको ज़्यादा बार कॉलबैक मिलेंगे. इसके बाद, देखें कि पिकअप/ड्रॉप-ऑफ़ की जगह कितनी दूर है. इससे आपको यह पता चलेगा कि आप पिकअप/ड्रॉप-ऑफ़ की जगह के काफ़ी करीब हैं या नहीं.

iOS में, सूचनाओं के बीच की दूरी को मैनेज करने के लिए, लिसनर GMSNavigatorListener.didUpdateRemainingDistance को लागू करें.

क्या नेविगेशन ऐप्लिकेशन के बैकग्राउंड में चलने पर, सूचनाएं पाने की सुविधा बंद की जा सकती है?

हां. Android में, सूचनाओं को कंट्रोल करने के लिए Navigator.setHeadsUpNotificationEnabled का इस्तेमाल करें. इस तरीके में बूलियन आर्ग्युमेंट होता है. FALSE से सूचनाएं बंद होती हैं; TRUE से सूचनाएं चालू होती हैं.

iOS में, सड़क पर स्नैप की गई जगहों के लिए बैकग्राउंड में सूचनाएं पाने की सुविधा बंद करने के लिए, GMSRoadSnappedLocationProvider.allowsBackgroundLocationUpdates को NO पर सेट करें.

जगह की जानकारी से जुड़ी अन्य सूचनाओं के लिए, बैकग्राउंड प्रोसेसिंग की सुविधा बंद करने के लिए, GMSNavigator.sendsBackgroundNotifications(NO) को कॉल करें.

यूज़र इंटरफ़ेस को पसंद के मुताबिक बनाना

क्या सबसे अच्छे रास्ते के विकल्प को कलर कोड किया जा सकता है?
नहीं. फ़िलहाल, किसी खास रास्ते के विकल्प को कलर कोड करने की सुविधा उपलब्ध नहीं है.
क्या Navigation SDK, आखिरी मंज़िल के लिए पहुंचने का अनुमानित समय (ईटीए) दिखा सकता है?

हां. Android में, इन तरीकों का इस्तेमाल करें:

  1. Navigator.getTimeAndDistanceList() का इस्तेमाल करके, सभी वेपॉइंट के लिए समय और दूरी की जानकारी पाएं.
  2. NavigationFragment.setEtaCardEnabled(false) का इस्तेमाल करके, मौजूदा वेपॉइंट का ईटीए छिपाएं.
  3. फ़ाइनल डेस्टिनेशन पर पहुंचने का अनुमानित समय रेंडर करें.

iOS में, इनका इस्तेमाल करें:

  1. GMSNavigator.routeLegs(read) पर कॉल करें.
  2. आखिरी लेग में, कॉल GMSNavigator.timeToNextDestination करें.
  3. MSMapView.settings.navigationFooterEnabled=NO को FALSE पर सेट करके, मौजूदा वेपॉइंट के ईटीए को छिपाएं.
  4. फ़ाइनल डेस्टिनेशन पर पहुंचने का अनुमानित समय रेंडर करें.
मैं पहुंचने के अनुमानित समय के अपडेट कैसे छिपाऊं?

ईटीए कार्ड को इन तरीकों से बंद किया जा सकता है:

  • Android में, navigationView.setEtaCardEnabled(false) का इस्तेमाल करें.
  • iOS में, GMSMapView.settings.navigationFooterEnabled=NO का इस्तेमाल करें.
हेडर और फ़ुटर कार्ड के लिए, यूज़र इंटरफ़ेस (यूआई) को किस तरह से पसंद के मुताबिक बनाया जा सकता है?

Android में, बैकग्राउंड के रंग की स्टाइल सेट करने के लिए StylingOptions का इस्तेमाल किया जाता है. हेडर और फ़ुटर को छिपाने या दिखाने के लिए, NavigationFragment के setHeaderEnabled और setFooterEnabled मेंबर फ़ंक्शन का इस्तेमाल करें.

iOS में, बैकग्राउंड के रंग की स्टाइल सेट करने के लिए, GMSMapView.settings.navigationHeaderPrimaryBackgroundColor का इस्तेमाल करें. हेडर और फ़ुटर को छिपाने या दिखाने के लिए, GMSUISettings की navigationFooterEnabled और navigationHeaderEnabled प्रॉपर्टी का इस्तेमाल करें.

रूटिंग

क्या ड्राइवर को कोई खास रास्ता बताया जा सकता है या अन्य रास्ते हटाए जा सकते हैं?
नहीं. डिफ़ॉल्ट रूप से, कई रास्ते दिखाए जाते हैं. इनमें सबसे तेज़ रास्ते को प्राथमिकता दी जाती है. अपने अनुरोध में "हाईवे और टोल से बचें" जैसी प्राथमिकताएं जोड़कर, डिफ़ॉल्ट रास्ते में बदलाव किया जा सकता है. वेपॉइंट जोड़ने से भी रास्ते पर असर पड़ता है.
क्या ऐप्लिकेशन के उपयोगकर्ता को डेस्टिनेशन के लिए, डिफ़ॉल्ट डेस्टिनेशन की जगह से अलग लेबल दिखाया जा सकता है?

हां. Android में, डेस्टिनेशन और अक्षांश/देशांतर के लिए कस्टम टाइटल वाला Marker बनाएं. Navigation SDK, NavigationMap पर कस्टम टाइटल और निर्देशांक दिखाता है.

iOS में, डेस्टिनेशन के लिए GMSMarker बनाया और दिखाया जाता है.

क्या तय किए गए पाथ से अलग रास्ते पर जाने की जानकारी ट्रैक करने के लिए, Navigation SDK का इस्तेमाल किया जा सकता है?

हां. Android में, Navigator.setRouteChangedListener का इस्तेमाल करके, रास्ते में बदलाव होने या नए रास्ते का सुझाव मिलने पर सूचनाएं पाएं:

  1. Navigator.setRouteChangedListener तरीके का इस्तेमाल करके, रास्ते पर डिवाइस की पोज़िशन की जांच करने वाला लिसनर रजिस्टर करें.
  2. कॉल बैक इवेंट हैंडलर में कोड जोड़ें, onRouteChanged:
    • ऐप्लिकेशन का इस्तेमाल करने वाले व्यक्ति को अपडेट किए गए ईटीए और दूरी की जानकारी वाला मैसेज भेजें.
    • डिवाइस की जगह की जानकारी को ट्रैक करना.
    • [ज़रूरी नहीं] अपने ऐप्लिकेशन में ऐसी अन्य सुविधाएं जोड़ें जिनकी ज़रूरत तब पड़ती है, जब ड्राइवर तय किए गए रास्ते पर नहीं होता है.

iOS में, GMSNavigator और इसके लिसनर का इस्तेमाल करें, ताकि रास्ता बदलने या नए रास्ते का सुझाव मिलने पर सूचनाएं मिल सकें:

  1. मैप के व्यू कंट्रोलर पर, GMSNavigatorListener प्रोटोकॉल और GMSRoadSnappedLocationProviderListener प्रोटोकॉल लागू करें.
  2. GMSNavigatorListener.navigatorDidChangeRoute लागू करें.
  3. GMSNavigator की routeLegs और currentRouteLeg प्रॉपर्टी का इस्तेमाल करके, नए रूट को ऐक्सेस करें.
क्या ड्राइवर, रास्ते को पूरा किए बिना नेविगेशन से बाहर निकल सकता है?

हां. Android में, नेविगेशन बंद करने के लिए Navigator.stopGuidance() तरीके को कॉल करें.

iOS में, GMSNavigator.clearDestinations पर कॉल करें.

क्या Navigation SDK, ट्रक और बड़ी गाड़ियों के लिए रूटिंग और नेविगेशन की सुविधा देता है?

हां. लार्ज वीइकल रूटिंग (एलवीआर) की मदद से, Routes API या Route Optimization API से जनरेट किए गए ट्रक के रूट टोकन, Navigation SDK को पास किए जा सकते हैं. एसडीके, रास्ते के दिशा-निर्देश (ऊंचाई, वज़न, खतरनाक सामान, और ट्रक पर लगी पाबंदियां) के साथ-साथ, मोड़-दर-मोड़ नेविगेशन की सुविधा देता है. साथ ही, डाइनैमिक रीरूटिंग के दौरान वाहन की फ़िज़िकल प्रोफ़ाइल को बनाए रखता है. ज़्यादा जानकारी के लिए, बड़ी गाड़ियों के लिए रास्ते ढूंढना लेख पढ़ें.

सिम्युलेटर

क्या सिम्युलेटर में रास्ते बदलने की सुविधा काम करती है?

हां. Android में, simulateLocationsAlongNewRoute पर कॉल करके, यात्रा का ऐसा सिम्युलेशन करें जिसमें रास्ते में बदलाव किया गया हो. simulateLocationsAlongExistingRoute मेथड, मौजूदा रास्ते में किए गए बदलावों को अनदेखा करता है.

iOS में, GMSLocationSimulator.simulateAlongNewRouteToDestinations का इस्तेमाल करके, यात्रा के दौरान रूट बदलने की सुविधा को सिम्युलेट करें. अगर आपको रास्ते में कोई बदलाव होने की उम्मीद नहीं है, तो GMSLocationSimulator.simulateLocationsAlongExistingRoute या GMSLocationSimulator.simulateAlongNewRouteToDestinations का इस्तेमाल किया जा सकता है.

वर्कफ़्लो

मैं नेविगेशन फ़्रैगमेंट वाली किसी गतिविधि को बंद करने के बाद, सूचना को कैसे खारिज करूं?

नेविगेशन की सूचना, नेविगेशन के दौरान दिखती रहती है. भले ही, गतिविधि बंद हो. वाहन के मंज़िल पर पहुंचने पर, नेविगेशन बंद हो जाता है और सूचना दिखनी बंद हो जाती है.

सूचना पर क्लिक को मैनेज करने के लिए, Navigator.startGuidance(intent resumeIntent) का इस्तेमाल करें. resume intent तब ट्रिगर होता है, जब ऐप्लिकेशन का उपयोगकर्ता सूचना पर क्लिक करता है. आम तौर पर, Navigator.startguidance(getIntent()) को मुख्य ऐक्टिविटी से कॉल किया जाता है. इससे ऐप्लिकेशन का इस्तेमाल करने वाला व्यक्ति, सूचना पर क्लिक करता है, तो ऐक्टिविटी फिर से शुरू हो जाती है.

परिवहन सेवाएं

मोबिलिटी सेवाओं के ग्राहकों के लिए, Navigation SDK का इस्तेमाल करना कैसे अलग है?

Google Maps Platform की Mobility Services में, एपीआई और एसडीके का कलेक्शन मिलता है. इससे परिवहन और लॉजिस्टिक्स से जुड़े कारोबारों की ज़रूरतों को पूरा करने में मदद मिलती है. मोबिलिटी सेवाओं के ग्राहकों के लिए, Navigation SDK का इस्तेमाल आम तौर पर इससे जुड़ी सेवाओं के साथ किया जाता है. जैसे, रास्ते को ऑप्टिमाइज़ करना, डिस्पैच करना, टास्क को ट्रैक करना, फ्लीट के आंकड़ों का विश्लेषण करना वगैरह. मोबिलिटी सेवाओं के ग्राहकों के लिए, Navigation SDK का बिल अलग तरीके से भेजा जाता है. ज़्यादा जानकारी के लिए, मोबिलिटी सेवाओं से जुड़ा दस्तावेज़ देखें.

मोबिलिटी प्रॉडक्ट, सिर्फ़ चुनिंदा ग्राहकों के लिए उपलब्ध हैं. ज़्यादा जानकारी के लिए, अपने सेल्स रेप्रज़ेंटेटिव से संपर्क करें.

मुझे कैसे पता चलेगा कि मैं Mobility Services का ग्राहक हूं?
अगर आपको पक्के तौर पर नहीं पता कि आपने Navigation SDK को मोबिलिटी सेवाओं के ग्राहक के तौर पर लागू किया है या नहीं, तो अपने कोड में ReportBillableEvent कॉल ढूंढें. सिर्फ़ मोबिलिटी सेवाओं के ग्राहकों को ReportBillableEvent तरीके को कॉल करना चाहिए.

मोबिलिटी सेवाओं के ग्राहकों के लिए, Navigation SDK की बिलिंग कैसे की जाती है?
मोबिलिटी सेवाओं के ग्राहकों के लिए, नेविगेशन SDK टूल की बिलिंग और कीमत, Google Maps Platform के साथ किए गए सेवा समझौते पर निर्भर करती है. यह पुष्टि करने के लिए कि मोबिलिटी सेवाओं के इस्तेमाल के लिए आपसे सही शुल्क लिया जा रहा है, बिलिंग की पुष्टि करना लेख पढ़ें. मोबिलिटी सेवाओं की बिलिंग के बारे में ज़्यादा जानकारी के लिए, अपने सेल्स रेप्रज़ेंटेटिव से संपर्क करें.

Navigation SDK के किन एपीआई का इस्तेमाल सिर्फ़ मोबिलिटी सेवाओं के खरीदारों को करना चाहिए?

Navigation SDK में कई ऐसे एपीआई हैं जिनका इस्तेमाल सिर्फ़ मोबिलिटी सेवाओं के ग्राहक कर सकते हैं. Google, इन ग्राहकों से हर लेन-देन के हिसाब से शुल्क लेता है. अगर आप Mobility Services के ग्राहक नहीं हैं, तो यहां दिए गए तरीके काम नहीं करेंगे:

अगर मैं Mobility Services का ग्राहक हूं, तो क्या Navigation SDK को Mobility Services के अलावा किसी अन्य सेवा के साथ भी लागू किया जा सकता है?

हां, मोबिलिटी सेवाओं के ग्राहक, मोबिलिटी सेवाओं और मोबिलिटी सेवाओं के अलावा अन्य सेवाओं के लिए, Navigation SDK टूल का इस्तेमाल कर सकते हैं. हालांकि, किसी ऐप्लिकेशन में एक बार में सिर्फ़ एक ही तरह के इंटिग्रेशन का इस्तेमाल किया जा सकता है. आपको एक नया Google Cloud प्रोजेक्ट, बिलिंग खाता, और एपीआई पासकोड भी बनाना होगा. यह पासकोड, मोबिलिटी सेवाओं को लागू करने के लिए इस्तेमाल किए जाने वाले पासकोड से अलग होना चाहिए. ज़्यादा जानकारी के लिए, Navigation SDK के सेटअप की खास जानकारी देखें.

Navigation SDK के नॉन-मोबिलिटी सेवाओं वाले वर्शन का इस्तेमाल करने के बारे में ज़्यादा जानकारी पाने के लिए, अपने Google खाता प्रतिनिधि से संपर्क करें. इसमें किसी ऐप्लिकेशन को एक वर्शन से दूसरे वर्शन पर माइग्रेट करने के बारे में भी जानकारी शामिल है.

ध्यान दें: अगर आप Mobility Services के ग्राहक नहीं हैं और आपको Mobility Services के एपीआई और एसडीके के कलेक्शन के बारे में ज़्यादा जानना है, तो Google Maps Platform की सेल्स टीम से संपर्क करें.