अक्सर पूछे जाने वाले सवाल
प्रॉडक्ट विवरण
- नेविगेशन SDK टूल की सेवा की शर्तों की सूचना कैसे दिखाई जानी चाहिए?
- वॉइस गाइडेंस की सुविधा किन भाषाओं में काम करती है?
- क्या ड्राइवर के नेविगेशन मोड से बाहर निकलने पर, दिशा का पता चलता रहता है?
- क्या रास्ता शुरू करने या बदलने के दौरान, पॉलीलाइन उपलब्ध होती हैं?
- क्या ऐप्लिकेशन के उपयोगकर्ताओं के पास Google Maps ऐप्लिकेशन इंस्टॉल होना चाहिए?
- क्या Navigation SDK टूल, रेस्टोरेंट और अन्य जगहों के आस-पास मौजूद पार्किंग की जानकारी दे सकता है?
- क्या Navigation SDK, किसी मोड़ पर पहुंचने पर, रास्ते में ट्रैफ़िक की दिशा दिखाता है?
समस्याएं
- Xcode 12 में, ऐप्लिकेशन सिम्युलेटर के लिए ठीक से नहीं बनते. मैं इस समस्या को कैसे ठीक करूं?
GMSMapView
लोड नहीं होता.
नेटवर्क
Data
- क्या रास्ता शुरू करने से पहले, किसी यात्रा के सभी स्टॉप/डेस्टिनेशन देखे जा सकते हैं?
- क्या रास्ते की शुरुआत में, मोड़-दर-मोड़ निर्देश पाने की सुविधा उपलब्ध है?
- ऐप्लिकेशन के उपयोगकर्ताओं को, बस के पहुंचने का अनुमानित समय (ईटीए) कैसे बताया जाता है?
- अगर नेविगेशन फ़ोरग्राउंड में नहीं है, तो क्या
RoadSnappedLocationProvider
का इस्तेमाल, ड्राइवर की फ़िलहाल की जगह की जानकारी पाने के लिए किया जा सकता है? - क्या Navigation SDK टूल, जगह के हिसाब से पाबंदी लगाने की सुविधा के साथ काम करता है?
- क्या नेविगेशन ऐप्लिकेशन के बैकग्राउंड में होने पर, सूचनाएं पाने की सुविधा बंद की जा सकती है?
यूज़र इंटरफ़ेस (यूआई) को पसंद के मुताबिक बनाना
- क्या सबसे अच्छे रास्ते के विकल्प को कलर कोड दिया जा सकता है?
- क्या नेविगेशन SDK टूल, आखिरी डेस्टिनेशन के लिए ईटीए दिखा सकता है?
- ईटीए के अपडेट कैसे छिपाएं?
- हेडर और फ़ुटर कार्ड के लिए, यूज़र इंटरफ़ेस (यूआई) में कौनसे बदलाव किए जा सकते हैं?
रूटिंग
- क्या ड्राइवर को कोई खास रास्ता दिया जा सकता है या अन्य रास्ते हटाए जा सकते हैं?
- क्या ड्राइवर को मंज़िल के लिए, डिफ़ॉल्ट तौर पर सेट की गई जगह के बजाय कोई दूसरा लेबल दिखाया जा सकता है?
- क्या तय किए गए पाथ से होने वाले बदलावों को ट्रैक करने के लिए, Navigation SDK का इस्तेमाल किया जा सकता है?
- क्या ड्राइवर, रास्ता पूरा किए बिना नेविगेशन से बाहर निकल सकता है?
सिम्युलेटर
वर्कफ़्लो
Mobility Services
- मोबिलिटी सर्विसेज़ के ग्राहकों के लिए, नेविगेशन SDK टूल का इस्तेमाल कैसे अलग है?
- मुझे कैसे पता चलेगा कि मैं Mobility Services का ग्राहक हूं?
- मोबिलिटी सेवाओं के ग्राहकों के लिए, नेविगेशन SDK टूल का बिल कैसे भेजा जाता है?
- Navigation SDK टूल के किन एपीआई का इस्तेमाल सिर्फ़ Mobility Services के ग्राहकों को करना चाहिए?
- अगर मैं Mobility Services का ग्राहक हूं, तो क्या मेरे पास Navigation SDK टूल के ऐसे वर्शन का इस्तेमाल करने का विकल्प है जो Mobility Services के साथ काम न करता हो?
प्रॉडक्ट विवरण
- आपके ऐप्लिकेशन में, नेविगेशन SDK टूल की सेवा की शर्तों के साथ एक डायलॉग बॉक्स लागू करना ज़रूरी है. हर ड्राइवर को यह शर्त स्वीकार करनी होगी. इस डायलॉग बॉक्स में, ड्राइवर को सेवा की शर्तों से सहमत होने का विकल्प मिलता है. नेविगेशन SDK टूल के साथ, शर्तों की एक टेक्स्ट फ़ाइल दी जाती है.
- Android में, शर्तों वाला डायलॉग बॉक्स दिखाने के लिए,
NavigationApi.showTermsAndConditionsDialog
तरीके का इस्तेमाल करें. - iOS में, कॉल करें
GMSNavigationServices.showTermsAndConditionsDialogIfNeededWithCompanyName
. - Google Maps Mobile पर काम करने वाली सभी भाषाएं, नेविगेशन SDK के लिए अपने-आप उपलब्ध हो जाती हैं. किसी डिवाइस पर, सिस्टम की डिफ़ॉल्ट भाषा सेट होती है. कोई ऐप्लिकेशन इस सेटिंग को बदल नहीं सकता. हालांकि, ऐप्लिकेशन के पास 70 से ज़्यादा भाषाओं का ऐक्सेस होता है.
-
हां. Android में,
LocationListener
शुरू होने के बाद, वह बैकग्राउंड में चलता रहता है. आपका ऐप्लिकेशन, सड़क की स्थिति को स्नैप करना जारी रखता है और दिशा बनाए रखता है.iOS में, बैकग्राउंड में अपनी जगह और दिशा की जानकारी के अपडेट पाने के लिए, सड़क के हिसाब से स्नैप करने की सुविधा चालू करें और
allowsBackgroundLocationUpdates
कोYES
पर सेट करें. -
हां. कोई रास्ता बनाने या उसमें बदलाव करने पर,
RouteChangeListener
पॉलीलाइन दिखाता है. - नहीं, नेविगेशन SDK टूल के लिए, डिवाइस पर Google Maps Mobile का इंस्टॉल होना ज़रूरी नहीं है.
- नहीं, फ़िलहाल नेविगेशन SDK टूल में यह सुविधा उपलब्ध नहीं है.
- हां. ट्रैफ़िक के लिए निर्देश की सुविधा उपलब्ध है और यह डिफ़ॉल्ट रूप से दिखती है.
समस्याएं
- Xcode 12 में, सिम्युलेटर के लिए ऐप्लिकेशन सही तरीके से नहीं बनते. इसे किस तरह ठीक किया जा सकता है?
-
इस समस्या को ठीक करने के लिए, Xcode प्रोजेक्ट की बिल्ड सेटिंग खोलें. इसके बाद, सिर्फ़ "iOS सिम्युलेटर" के लिए,
Excluded Architectures
मेंarm64
जोड़ें.ज़्यादा जानकारी के लिए, यहां दी गई StackOverflow थ्रेड देखें.
- GMSMapView लोड नहीं होता.
-
अगर GMSMapView लोड नहीं होता है, तो:
- देखें कि Cloud Console में NavSDK चालू है या नहीं.
- अगर Nav SDK टूल इंस्टॉल है, लेकिन आपका प्रोजेक्ट Nav SDK टूल के एपीआई का इस्तेमाल नहीं करता है, तो उसे अपनी बाइनरी से हटाएं.
नेटवर्क
- Navigation SDK, खराब कनेक्टिविटी को कैसे मैनेज करता है?
- Navigation SDK टूल, हर यात्रा के लिए रास्ते को पहले से कैश मेमोरी में सेव कर लेता है. पहले से कैश मेमोरी में सेव की गई जानकारी में, 15 से 20 मिनट के लिए रास्ते की जानकारी शामिल होती है. साथ ही, अगर ड्राइवर रास्ते से हटता है, तो रास्ते के विकल्प भी शामिल होते हैं. नेविगेशन SDK टूल, डिवाइस के जीपीएस और सेंसर का इस्तेमाल करके, जगह की अनुमानित जानकारी देता है.
- क्या ऑफ़लाइन मोड उपलब्ध है?
- नहीं, नेविगेशन SDK टूल फ़िलहाल ऑफ़लाइन मोड की सुविधा नहीं देता. हालांकि, यह टूल किसी यात्रा के लिए पहले से कैश मेमोरी में सेव की गई जानकारी उपलब्ध कराता है.
Data
- क्या रास्ता शुरू करने से पहले, यात्रा के सभी स्टॉप/डेस्टिनेशन देखे जा सकते हैं?
-
हां. Android में, किसी रास्ते के निर्देश पाने के लिए,
Navigator.getRouteSegments()
को कॉल करें.iOS में,
GMSNavigator.routeLegs(read)
को कॉल करें. - क्या रास्ते की शुरुआत में, मोड़-दर-मोड़ निर्देश देने की सुविधा उपलब्ध है?
- हां. नेविगेशन SDK, रास्ते के सेगमेंट की सूची उपलब्ध कराता है. इसके अलावा, ड्राइवर हर कार्रवाई देखने के लिए, हेडर में दिए गए निर्देशों के कार्ड पर स्वाइप कर सकता है.
- ऐप्लिकेशन के उपयोगकर्ताओं को ईटीए की जानकारी कैसे दी जाती है?
-
Android में, ऐप्लिकेशन के उपयोगकर्ताओं को ईटीए की जानकारी देने के लिए, यह तरीका अपनाएं:
Navigator.getTimeAndDistanceList()
का इस्तेमाल करके, सभी वेपॉइंट के लिए समय और दूरी पाएं.- इस जानकारी को क्लाइंट ऐप्लिकेशन पर फ़ॉरवर्ड करें, जैसा कि आपने अभी तक ड्राइवर के ईटीए के लिए किया है.
iOS में, ऐप्लिकेशन के उपयोगकर्ताओं को ईटीए की जानकारी देने के लिए, यह तरीका अपनाएं:
-
Navigator.getRouteSegments()
का इस्तेमाल करके, सफ़र के लेग वापस पाएं. - यात्रा के हर चरण के लिए
GMSNavigator.timeToNextDestination
को कॉल करें. - क्लाइंट ऐप्लिकेशन को समय की जानकारी भेजें, जैसा कि ड्राइवर के ईटीए के लिए फ़िलहाल किया जाता है.
-
अगर नेविगेशन फ़ोरग्राउंड में नहीं है, तो क्या
RoadSnappedLocationProvider
का इस्तेमाल ड्राइवर की फ़िलहाल की जगह की जानकारी पाने के लिए किया जा सकता है? -
हां. Android में,
RoadSnappedLocationProvider
डिफ़ॉल्ट रूप से बैकग्राउंड में चलता है.iOS में, नेविगेशन को बैकग्राउंड में चालू रखने के लिए,
GMSRoadSnappedLocationProviderListener
के लिए listener लागू करें और प्रॉपर्टीallowsBackgroundLocationUpdates
कोTRUE
पर सेट करें. - क्या नेविगेशन SDK टूल, जियोफ़ेंसिंग की सुविधा के साथ काम करता है?
-
नहीं. नेविगेशन के मामले में,
remainingTimeOrdistanceChangeListener
का फ़ायदा, सामान्य जियोफ़ेंस की तुलना में ज़्यादा है. ऐसा हो सकता है कि जियोफ़ेंस में सड़क की ज्यामिति का ध्यान न रखा गया हो. साथ ही, हो सकता है कि यह उस जगह पर सेट न हो जहां ड्राइवर नेविगेट कर रहा हो.remainingTimeOrdistanceChangeListener
का इस्तेमाल करके, इस सुविधा के बारे में अनुमान लगाया जा सकता है.- कॉलबैक की फ़्रीक्वेंसी तय करने के लिए, थ्रेशोल्ड सेट करें.
- देखें कि आपकी मंज़िल कितनी दूर है.
उदाहरण के लिए, अगर आपने थ्रेशोल्ड को 100 मीटर पर सेट किया है, तो डेस्टिनेशन की दूरी में 100 मीटर का बदलाव होने पर आपको कॉलबैक मिलता है. जैसे-जैसे दूरी कम होती है, इस थ्रेशोल्ड को छोटी वैल्यू पर अपडेट किया जा सकता है और आपको ज़्यादा बार कॉलबैक मिल सकते हैं. इसके बाद, बाकी बची दूरी देखकर यह तय करें कि आप पिकअप/ड्रॉप-ऑफ़ की जगह के पास हैं या नहीं.
iOS में, सूचनाओं के बीच की दूरी को मैनेज करने के लिए, listener
GMSNavigatorListener.didUpdateRemainingDistance
लागू करें. - क्या नेविगेशन ऐप्लिकेशन के बैकग्राउंड में होने पर, सूचनाएं पाने की सुविधा बंद की जा सकती है?
-
हां. Android में, सूचनाएं कंट्रोल करने के लिए
Navigator.setHeadsUpNotificationEnabled
का इस्तेमाल करें. इस तरीके में एक बूलियन आर्ग्युमेंट होता है.FALSE
सूचनाएं बंद कर देता है;TRUE
सूचनाएं चालू करता है.iOS में, सड़क की फ़ोटो खींचने की सुविधा के लिए, बैकग्राउंड में सूचना पाने की सुविधा बंद करें. इसके लिए,
GMSRoadSnappedLocationProvider.allowsBackgroundLocationUpdates
को 'नहीं' पर सेट करें.जगह की जानकारी से जुड़ी अन्य सूचनाओं के लिए, बैकग्राउंड में प्रोसेस करने की सुविधा बंद करने के लिए,
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
का इस्तेमाल किया जा सकता है, तो आपकोGMSLocationSimulator.simulateLocationsAlongExistingRoute
याGMSLocationSimulator.simulateAlongNewRouteToDestinations
का इस्तेमाल करना चाहिए.
वर्कफ़्लो
- नेविगेशन फ़्रैगमेंट वाली गतिविधि को बंद करने के बाद, सूचना को कैसे खारिज करें?
-
नेविगेशन की सूचना, नेविगेट करने के दौरान दिखती रहती है. ऐसा तब होता है, जब गतिविधि बंद हो. जब वाहन अपने मकसद पर पहुंच जाता है, तो नेविगेशन बंद हो जाता है और सूचना गायब हो जाती है.
सूचना पर क्लिक करने की सुविधा को मैनेज करने के लिए,
Navigator.startGuidance(intent resumeIntent)
का इस्तेमाल करें. जब ऐप्लिकेशन का उपयोगकर्ता सूचना पर क्लिक करता है, तबresume intent
ट्रिगर होता है. आम तौर पर,Navigator.startguidance(getIntent())
को मुख्य ऐक्टिविटी से कॉल किया जाता है. यह ऐक्टिविटी, ऐप्लिकेशन के उपयोगकर्ता के सूचना पर क्लिक करने पर फिर से शुरू हो जाती है.
Mobility Services
Google Maps Platform की मोबिलिटी सेवाएं, एपीआई और SDK टूल का कलेक्शन उपलब्ध कराती हैं. इससे, परिवहन और लॉजिस्टिक कारोबारों की ज़रूरतों को पूरा करने में मदद मिलती है. Mobility Services के ग्राहकों के लिए, नेविगेशन SDK टूल का इस्तेमाल आम तौर पर, रास्ते के ऑप्टिमाइज़ेशन, डिस्पैच, टास्क ट्रैकिंग, फ़्लीट के आंकड़ों वगैरह से जुड़ी सेवाओं के साथ किया जाता है. Mobility Services के ग्राहकों के लिए, नेविगेशन एसडीके टूल की बिलिंग अलग तरीके से की जाती है. ज़्यादा जानकारी के लिए, मोबिलिटी सेवाओं का दस्तावेज़ देखें.
फ़िलहाल, मोबिलिटी प्रॉडक्ट सिर्फ़ चुनिंदा ग्राहकों के लिए उपलब्ध हैं. ज़्यादा जानकारी के लिए, अपने सेल्स रेप्रज़ेंटेटिव से संपर्क करें.
ReportBillableEvent
कॉल देखें. सिर्फ़ Mobility Services के ग्राहकों को ReportBillableEvent
तरीके का इस्तेमाल करना चाहिए.
Navigation SDK में कई ऐसे एपीआई हैं जिन्हें सिर्फ़ Mobility Services के ग्राहक इस्तेमाल कर सकते हैं. Google, हर लेन-देन के हिसाब से इनके लिए शुल्क लेता है. अगर आप Mobility Services के ग्राहक नहीं हैं, तो नीचे दिए गए तरीके काम नहीं करेंगे:
हां, Mobility Services के ग्राहक, नेविगेशन SDK टूल के Mobility Services और बिना Mobility Services वाले, दोनों वर्शन का इस्तेमाल कर सकते हैं. हालांकि, किसी ऐप्लिकेशन में एक बार में सिर्फ़ एक तरह के लागू करने का तरीका इस्तेमाल किया जा सकता है. आपको एक नया Google Cloud प्रोजेक्ट, बिलिंग खाता, और एपीआई पासकोड भी बनाना होगा. यह प्रोजेक्ट, बिलिंग खाता, और एपीआई पासकोड, Mobility Services को लागू करने के लिए इस्तेमाल किए जाने वाले प्रोजेक्ट, बिलिंग खाते, और एपीआई पासकोड से अलग होना चाहिए. ज़्यादा जानकारी के लिए, Navigation SDK टूल के सेटअप की खास जानकारी देखें.
Navigation SDK टूल को Mobility Services के अलावा किसी अन्य तरीके से लागू करने के बारे में ज़्यादा जानने के लिए, अपने Google खाता प्रतिनिधि से संपर्क करें. इसमें, किसी ऐप्लिकेशन को एक तरीके से दूसरे तरीके पर माइग्रेट करने के बारे में भी जानकारी मिल सकती है.
ध्यान दें: अगर फ़िलहाल आप Mobility Services के ग्राहक नहीं हैं और आपको Mobility Services के एपीआई और SDK टूल के कलेक्शन के बारे में ज़्यादा जानना है, तो Google Maps Platform की बिक्री टीम से संपर्क करें.