अक्सर पूछे जाने वाले सवाल
प्रॉडक्ट विवरण
- Navigation SDK की सेवा की शर्तों से जुड़ी सूचना कैसे दिखाई जानी चाहिए?
- बोलकर निर्देश देने की सुविधा किन भाषाओं में उपलब्ध है?
- क्या ड्राइवर के नेविगेशन मोड से बाहर निकलने पर भी दिशा बनी रहती है?
- क्या रास्ता शुरू करते समय या बदलते समय, पॉलीलाइन उपलब्ध होती हैं?
- क्या ऐप्लिकेशन इस्तेमाल करने वाले लोगों के पास Google Maps मोबाइल ऐप्लिकेशन इंस्टॉल होना चाहिए?
- क्या Navigation SDK टूल, रेस्टोरेंट और अन्य डेस्टिनेशन के आस-पास पार्किंग की जानकारी दे सकता है?
- क्या Navigation SDK, मुड़ने की जगह के पास पहुंचने पर लेन में ट्रैफ़िक की दिशा दिखाता है?
समस्याएं
- Xcode 12 में, ऐप्लिकेशन सिम्युलेटर के लिए सही तरीके से नहीं बनाए जाते. मैं इस समस्या को कैसे ठीक करूं?
GMSMapViewलोड नहीं होता.
नेटवर्क
Data
- क्या मैं यात्रा शुरू करने से पहले, यात्रा के सभी स्टॉप/मंज़िलों की जानकारी पा सकता/सकती हूं?
- क्या किसी रास्ते की शुरुआत में, मोड़-दर-मोड़ रास्ते के बारे में जानकारी मिलती है?
- ऐप्लिकेशन के उपयोगकर्ताओं को पहुंचने का अनुमानित समय (ईटीए) कैसे बताया जाता है?
- अगर नेविगेशन फ़ोरग्राउंड में नहीं है, तो क्या ड्राइवर की मौजूदा जगह की जानकारी पाने के लिए
RoadSnappedLocationProviderका इस्तेमाल किया जा सकता है? - क्या Navigation SDK में जियोफ़ेंसिंग की सुविधा काम करती है?
- क्या नेविगेशन ऐप्लिकेशन के बैकग्राउंड में चलने के दौरान सूचनाएं पाने की सुविधा बंद की जा सकती है?
यूज़र इंटरफ़ेस को पसंद के मुताबिक बनाना
- क्या सबसे अच्छे रास्ते के विकल्प को कलर कोड किया जा सकता है?
- क्या Navigation SDK, आखिरी मंज़िल पर पहुंचने का अनुमानित समय दिखा सकता है?
- मैं पहुंचने के अनुमानित समय के अपडेट कैसे छिपाऊं?
- हेडर और फ़ुटर कार्ड के लिए, यूज़र इंटरफ़ेस (यूआई) को पसंद के मुताबिक बनाने की कौनसी सुविधाएं उपलब्ध हैं?
रूटिंग
- क्या ड्राइवर को कोई खास रास्ता बताया जा सकता है या वैकल्पिक रास्तों को हटाया जा सकता है?
- क्या ड्राइवर को डेस्टिनेशन के लिए, डिफ़ॉल्ट डेस्टिनेशन की जगह के बजाय कोई दूसरा लेबल दिखाया जा सकता है?
- क्या तय किए गए रास्ते से भटकाव का पता लगाने के लिए, Navigation SDK का इस्तेमाल किया जा सकता है?
- क्या ड्राइवर, रास्ते पर पूरा सफ़र किए बिना नेविगेशन बंद कर सकता है?
सिम्युलेटर
वर्कफ़्लो
मोबिलिटी सेवाएं
- मोबिलिटी सेवाओं के ग्राहकों के लिए, Navigation SDK का इस्तेमाल कैसे अलग है?
- मुझे कैसे पता चलेगा कि मैं Mobility Services का ग्राहक हूं?
- मोबिलिटी सेवाओं के ग्राहकों से, Navigation SDK के लिए बिल कैसे लिया जाता है?
- Navigation SDK के किन एपीआई का इस्तेमाल सिर्फ़ मोबिलिटी सेवाओं के ग्राहक कर सकते हैं?
- अगर मैं Mobility Services का ग्राहक हूं, तो क्या Navigation SDK को Mobility Services के अलावा किसी अन्य तरीके से भी लागू किया जा सकता है?
प्रॉडक्ट विवरण
- आपके ऐप्लिकेशन में, 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 API का इस्तेमाल नहीं करता है, तो इसे अपनी बाइनरी से हटा दें.
नेटवर्क
- Navigation SDK, खराब कनेक्टिविटी को कैसे मैनेज करता है?
- Navigation SDK, हर यात्रा के लिए रूट को पहले से कैश मेमोरी में सेव कर लेता है. पहले से कैश की गई जानकारी में, 15 से 20 मिनट के लिए रास्ते की जानकारी शामिल होती है. इसके अलावा, अगर ड्राइवर रास्ते से भटक जाता है, तो उसके लिए वैकल्पिक रास्ते की जानकारी भी शामिल होती है. Navigation SDK, डिवाइस के जीपीएस और सेंसर का इस्तेमाल करके जगह की जानकारी का अनुमान लगाता है.
- क्या ऑफ़लाइन मोड उपलब्ध है?
- नहीं, फ़िलहाल Navigation SDK में ऑफ़लाइन मोड की सुविधा उपलब्ध नहीं है. हालांकि, एसडीके किसी यात्रा के लिए पहले से कैश की गई जानकारी उपलब्ध कराता है.
Data
- क्या यात्रा शुरू करने से पहले, रास्ते में पड़ने वाले सभी स्टॉप/मंज़िलों की जानकारी देखी जा सकती है?
-
हां. Android में, किसी रास्ते के निर्देश वापस पाने के लिए,
Navigator.getRouteSegments()पर कॉल करें.iOS में,
GMSNavigator.routeLegs(read)को कॉल करो. - क्या किसी रास्ते की शुरुआत में, मोड़-दर-मोड़ दिशा-निर्देश उपलब्ध होते हैं?
- हां. Navigation SDK, रास्ते के सेगमेंट की सूची उपलब्ध कराता है. इसके अलावा, ड्राइवर हेडर में मौजूद दिशा-निर्देश वाले कार्ड को स्वाइप करके, हर दिशा-निर्देश देख सकता है.
- ऐप्लिकेशन के उपयोगकर्ताओं को पहुंचने का अनुमानित समय (ईटीए) कैसे बताया जाता है?
-
Android में, ऐप्लिकेशन इस्तेमाल करने वाले लोगों को ईटीए की जानकारी देने के लिए, यह तरीका अपनाएं:
Navigator.getTimeAndDistanceList()का इस्तेमाल करके, सभी वेपॉइंट के लिए समय और दूरी की जानकारी पाएं.- इस जानकारी को क्लाइंट ऐप्लिकेशन पर भेजें. ऐसा ही आपको ड्राइवर के ईटीए के लिए करना होता है.
iOS में, ऐप्लिकेशन के उपयोगकर्ताओं को पहुंचने के अनुमानित समय की जानकारी देने के लिए, यह तरीका अपनाएं:
-
Navigator.getRouteSegments()का इस्तेमाल करके, यात्रा के लेग वापस पाएं. - यात्रा के हर चरण के लिए,
GMSNavigator.timeToNextDestinationको कॉल करें. - समय की जानकारी को क्लाइंट ऐप्लिकेशन पर उसी तरह फ़ॉरवर्ड करें जिस तरह ड्राइवर के पहुंचने का अनुमानित समय फ़ॉरवर्ड किया जाता है.
-
अगर नेविगेशन फ़ोरग्राउंड में नहीं है, तो क्या
RoadSnappedLocationProviderका इस्तेमाल करके ड्राइवर की मौजूदा जगह की जानकारी हासिल की जा सकती है? -
हां. Android में,
RoadSnappedLocationProviderडिफ़ॉल्ट रूप से बैकग्राउंड में चलता है.iOS में, नेविगेशन को बैकग्राउंड में चालू रखने के लिए,
GMSRoadSnappedLocationProviderListenerके लिए लिसनर लागू करें. साथ ही,allowsBackgroundLocationUpdatesप्रॉपर्टी कोTRUEपर सेट करें. - क्या Navigation SDK, जियोफ़ेंसिंग की सुविधा के साथ काम करता है?
-
नहीं. नेविगेशन के मामले में, जियोफ़ेंस की तुलना में
remainingTimeOrdistanceChangeListenerबेहतर है. ऐसा हो सकता है कि जियोफ़ेंस में सड़क की ज्यामिति को ध्यान में न रखा गया हो. साथ ही, यह भी हो सकता है कि जियोफ़ेंस उस सटीक पॉइंट पर न हो जहां ड्राइवर को नेविगेट करना है.remainingTimeOrdistanceChangeListenerका इस्तेमाल करके, इस सुविधा का फ़ायदा पाया जा सकता है.- कॉलबैक की फ़्रीक्वेंसी तय करने के लिए थ्रेशोल्ड सेट करें.
- मंज़िल की बची हुई दूरी देखें.
उदाहरण के लिए, अगर आपने थ्रेशोल्ड को 100 मीटर पर सेट किया है, तो मंज़िल की दूरी में 100 मीटर का बदलाव होने पर आपको कॉलबैक मिलेगा. दूरी कम होने पर, इस थ्रेशोल्ड को कम वैल्यू पर अपडेट किया जा सकता है. इससे आपको ज़्यादा बार कॉलबैक मिलेंगे. इसके बाद, पिकअप/ड्रॉप-ऑफ़ की जगह से बची हुई दूरी देखें. इससे आपको पता चलेगा कि आप पिकअप/ड्रॉप-ऑफ़ की जगह के काफ़ी करीब हैं या नहीं.
iOS में, सूचनाओं के बीच की दूरी को मैनेज करने के लिए, लिसनर
GMSNavigatorListener.didUpdateRemainingDistanceलागू करें. - क्या नेविगेशन ऐप्लिकेशन के बैकग्राउंड में होने पर, सूचनाएं पाने की सुविधा बंद की जा सकती है?
-
हां. Android में, सूचनाओं को कंट्रोल करने के लिए
Navigator.setHeadsUpNotificationEnabledका इस्तेमाल करें. इस तरीके में एक बूलियन आर्ग्युमेंट होता है.FALSEसूचनाएं पाने की सुविधा बंद करता है;TRUEसूचनाएं पाने की सुविधा चालू करता है.iOS में, सड़क के हिसाब से जगह की जानकारी के लिए बैकग्राउंड में सूचना पाने की सुविधा बंद करें. इसके लिए,
GMSRoadSnappedLocationProvider.allowsBackgroundLocationUpdatesको NO पर सेट करें.जगह की जानकारी से जुड़ी अन्य सूचनाओं के लिए, बैकग्राउंड में प्रोसेस करने की सुविधा बंद करने के लिए,
GMSNavigator.sendsBackgroundNotifications(NO)को कॉल करें.
यूज़र इंटरफ़ेस को पसंद के मुताबिक बनाना
- क्या सबसे अच्छे रास्ते के विकल्प को रंग के हिसाब से कोड किया जा सकता है?
- नहीं. फ़िलहाल, किसी खास रास्ते के विकल्प को कलर कोड करने की सुविधा उपलब्ध नहीं है.
- क्या Navigation SDK, आखिरी मंज़िल तक पहुंचने का अनुमानित समय दिखा सकता है?
-
हां. Android में, इन तरीकों का इस्तेमाल करें:
Navigator.getTimeAndDistanceList()का इस्तेमाल करके, सभी वेपॉइंट के लिए समय और दूरी की जानकारी पाएं.NavigationFragment.setEtaCardEnabled(false)का इस्तेमाल करके, मौजूदा वेपॉइंट का ईटीए छिपाएं.- फ़ाइनल डेस्टिनेशन पर पहुंचने का अनुमानित समय रेंडर करता है.
iOS में, इनका इस्तेमाल करें:
GMSNavigator.routeLegs(read)पर कॉल करें.- आखिरी लेग के लिए, कॉल
GMSNavigator.timeToNextDestination. MSMapView.settings.navigationFooterEnabled=NOको FALSE पर सेट करके, मौजूदा वेपॉइंट के ईटीए को छिपाएं.- फ़ाइनल डेस्टिनेशन पर पहुंचने का अनुमानित समय रेंडर करता है.
- मैं पहुंचने के अनुमानित समय के अपडेट कैसे छिपाऊं?
-
ईटीए कार्ड को इन तरीकों से बंद किया जा सकता है:
- Android में,
navigationView.setEtaCardEnabled(false)का इस्तेमाल करें. - iOS में,
GMSMapView.settings.navigationFooterEnabled=NOका इस्तेमाल करें.
- Android में,
-
Android में, बैकग्राउंड के रंग की स्टाइल सेट करने के लिए
StylingOptionsका इस्तेमाल किया जाता है. हेडर और फ़ुटर को छिपाने या दिखाने के लिए,NavigationFragmentकेsetHeaderEnabledऔरsetFooterEnabledमेंबर फ़ंक्शन का इस्तेमाल करें.iOS में, बैकग्राउंड के रंग की स्टाइल सेट करने के लिए,
GMSMapView.settings.navigationHeaderPrimaryBackgroundColorका इस्तेमाल करें. हेडर और फ़ुटर को छिपाने या दिखाने के लिए,GMSUISettingsकीnavigationFooterEnabledऔरnavigationHeaderEnabledप्रॉपर्टी का इस्तेमाल करें.
रूटिंग
- क्या ड्राइवर को कोई खास रास्ता बताया जा सकता है या वैकल्पिक रास्ते हटाए जा सकते हैं?
- नहीं. डिफ़ॉल्ट रूप से, एक से ज़्यादा रास्ते दिखाए जाते हैं. इनमें सबसे तेज़ रास्ते को प्राथमिकता दी जाती है. अपने अनुरोध में "हाईवे और टोल से बचें" जैसी प्राथमिकताएं जोड़कर, डिफ़ॉल्ट रास्ते में बदलाव किया जा सकता है. वेपॉइंट जोड़ने से भी रूट पर असर पड़ता है.
- क्या ऐप्लिकेशन इस्तेमाल करने वाले व्यक्ति को, मंज़िल की डिफ़ॉल्ट जगह के बजाय कोई दूसरा लेबल दिखाया जा सकता है?
-
हां. Android में, मंज़िल और अक्षांश/देशांतर के लिए कस्टम टाइटल वाला
Markerबनाएं. Navigation SDK,NavigationMapपर कस्टम टाइटल और निर्देशांक दिखाता है.iOS में, डेस्टिनेशन के लिए
GMSMarkerबनाया और दिखाया जाता है. - क्या तय किए गए रास्ते से भटकाव का पता लगाने के लिए, Navigation SDK का इस्तेमाल किया जा सकता है?
-
हां. Android में,
Navigator.setRouteChangedListenerका इस्तेमाल करके, रास्ते में बदलाव होने या नए रास्ते का सुझाव मिलने पर सूचनाएं पाएं:- एक ऐसा लिसनर रजिस्टर करें जो
Navigator.setRouteChangedListenerतरीके का इस्तेमाल करके, रास्ते पर डिवाइस की पोज़िशन की जांच करता है. - कॉल बैक इवेंट हैंडलर में कोड जोड़ें,
onRouteChanged:- ऐप्लिकेशन का इस्तेमाल करने वाले व्यक्ति को अपडेट किए गए ईटीए और दूरी की जानकारी के साथ मैसेज भेजें.
- डिवाइस की जगह की जानकारी ट्रैक करना.
- [ज़रूरी नहीं] अपने ऐप्लिकेशन में ऐसी अन्य सुविधाएं जोड़ें जिनकी ज़रूरत तब पड़ती है, जब ड्राइवर तय किए गए रास्ते से हट जाता है.
iOS में,
GMSNavigatorऔर इसके लिसनर का इस्तेमाल करके, रास्ते में बदलाव होने या नए रास्ते का सुझाव मिलने पर सूचनाएं पाएं:- मैप के व्यू कंट्रोलर पर,
GMSNavigatorListenerप्रोटोकॉल औरGMSRoadSnappedLocationProviderListenerप्रोटोकॉल लागू करें. - लागू करें
GMSNavigatorListener.navigatorDidChangeRoute. GMSNavigatorकीrouteLegsऔरcurrentRouteLegप्रॉपर्टी का इस्तेमाल करके, नए रूट को ऐक्सेस करें.
- एक ऐसा लिसनर रजिस्टर करें जो
-
हां. Android में, नेविगेशन रोकने के लिए
Navigator.stopGuidance()वाले तरीके को कॉल करें.iOS में,
GMSNavigator.clearDestinationsको कॉल करो.
सिम्युलेटर
- क्या सिम्युलेटर में रास्ते बदलने की सुविधा काम करती है?
-
हां. Android में, रास्ते में बदलाव करके यात्रा का सिम्युलेशन करने के लिए,
simulateLocationsAlongNewRouteपर कॉल करें.simulateLocationsAlongExistingRouteतरीके से, मौजूदा रास्ते में किए गए बदलावों को अनदेखा किया जाता है.iOS में,
GMSLocationSimulator.simulateAlongNewRouteToDestinationsका इस्तेमाल करके, यात्रा को सिम्युलेट करें. इसमें रास्ते में बदलाव भी शामिल है. अगर आपको रूट में किसी बदलाव की उम्मीद नहीं है, तोGMSLocationSimulator.simulateLocationsAlongExistingRouteयाGMSLocationSimulator.simulateAlongNewRouteToDestinationsका इस्तेमाल किया जा सकता है.
वर्कफ़्लो
- नेविगेशन फ़्रैगमेंट वाली किसी गतिविधि को बंद करने के बाद, सूचना को कैसे खारिज करें?
-
गतिविधि बंद होने पर भी, नेविगेशन के दौरान नेविगेशन की सूचना दिखती रहती है. गाड़ी के मंज़िल पर पहुंचने के बाद, नेविगेशन बंद हो जाता है और सूचना हट जाती है.
सूचना पर क्लिक को मैनेज करने के लिए,
Navigator.startGuidance(intent resumeIntent)का इस्तेमाल करें.resume intentतब ट्रिगर होता है, जब ऐप्लिकेशन का उपयोगकर्ता सूचना पर क्लिक करता है. आम तौर पर,Navigator.startguidance(getIntent())को मुख्य ऐक्टिविटी से कॉल किया जाता है. इससे ऐप्लिकेशन का इस्तेमाल करने वाला व्यक्ति जब सूचना पर क्लिक करता है, तब ऐक्टिविटी फिर से शुरू हो जाती है.
मोबिलिटी सेवाएं
Google Maps Platform की मोबिलिटी सेवाएं, एपीआई और एसडीके का कलेक्शन उपलब्ध कराती हैं. इससे परिवहन और लॉजिस्टिक्स से जुड़े कारोबारों की ज़रूरतों को पूरा करने में मदद मिलती है. मोबिलिटी सेवाओं के ग्राहकों के लिए, Navigation SDK का इस्तेमाल आम तौर पर इससे जुड़ी सेवाओं के साथ किया जाता है. जैसे, रास्ते को ऑप्टिमाइज़ करना, डिस्पैच करना, टास्क को ट्रैक करना, फ्लीट के आंकड़ों का विश्लेषण करना वगैरह. मोबिलिटी सेवाओं के ग्राहकों के लिए, Navigation SDK का बिल अलग तरीके से भेजा जाता है. ज़्यादा जानकारी के लिए, मोबिलिटी सेवाओं से जुड़ा दस्तावेज़ देखें.
मोबिलिटी प्रॉडक्ट, सिर्फ़ चुनिंदा ग्राहकों के लिए उपलब्ध हैं. ज़्यादा जानकारी के लिए, अपने सेल्स रेप्रज़ेंटेटिव से संपर्क करें.
ReportBillableEvent कॉल ढूंढें. सिर्फ़ Mobility Services के ग्राहकों को ReportBillableEvent तरीके का इस्तेमाल करना चाहिए.
Navigation SDK में कई ऐसे एपीआई हैं जिनका इस्तेमाल सिर्फ़ मोबिलिटी सेवाओं के ग्राहक कर सकते हैं. Google, इन ग्राहकों से हर लेन-देन के हिसाब से शुल्क लेता है. अगर आपने मोबिलिटी सेवाओं का इस्तेमाल नहीं किया है, तो यहां दिए गए तरीके काम नहीं करेंगे:
हां, मोबिलिटी सेवाओं के ग्राहक, Navigation SDK के मोबिलिटी सेवाओं और गैर-मोबिलिटी सेवाओं, दोनों के लिए उपलब्ध वर्शन का इस्तेमाल कर सकते हैं. हालांकि, किसी ऐप्लिकेशन में एक बार में सिर्फ़ एक ही तरह का इंटिग्रेशन इस्तेमाल किया जा सकता है. आपको एक नया Google Cloud प्रोजेक्ट, बिलिंग खाता, और एपीआई पासकोड भी बनाना होगा. यह पासकोड, उस पासकोड से अलग होना चाहिए जिसका इस्तेमाल आपने Mobility Services को लागू करने के लिए किया था. ज़्यादा जानकारी के लिए, Navigation SDK के सेटअप की खास जानकारी देखें.
Navigation SDK के Mobility Services के अलावा किसी अन्य वर्शन का इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, अपने Google खाता प्रतिनिधि से संपर्क करें. इसमें किसी ऐप्लिकेशन को एक वर्शन से दूसरे वर्शन पर माइग्रेट करने के बारे में जानकारी भी शामिल है.
ध्यान दें: अगर आप Mobility Services के ग्राहक नहीं हैं और आपको Mobility Services के एपीआई और एसडीके के बारे में ज़्यादा जानना है, तो Google Maps Platform की सेल्स टीम से संपर्क करें.