नेविगेशन पॉइंट तक पहुंचने का रास्ता

Android के लिए Navigation SDK टूल की मदद से, वेपॉइंट तय करने के बेहतर तरीके मिलते हैं. इससे सटीक रूटिंग और बेहतर तरीके से पहुंचने का अनुभव मिलता है. खास तौर पर, उन जगहों के लिए जहां कई एंट्री या नेविगेशन के खास पॉइंट होते हैं. किसी navigationPointToken का इस्तेमाल करके या ज़्यादा कॉन्टेक्स्ट के लिए, अक्षांश और देशांतर के कोऑर्डिनेट को जगह के आईडी के साथ जोड़कर, सटीक जगहों पर रूट किया जा सकता है. अगर लागू हो, तो डेस्टिनेशन को हाइलाइट करने की सुविधा काम करती रहेगी.

बैकग्राउंड

वर्शन 7.4 से पहले, अक्षांश और देशांतर के कोऑर्डिनेट या जगह के आईडी का इस्तेमाल करके, Waypoint तय किया जा सकता था. कभी-कभी, सिर्फ़ अक्षांश और देशांतर के हिसाब से रूटिंग करने पर, ड्रॉप-ऑफ़ या पिक-अप पॉइंट सही नहीं होते. खास तौर पर, बड़ी जगहों, पार्कों या कई एंट्री वाले भवनों के लिए. ऐसा हो सकता है कि नतीजा, सड़क के सबसे नज़दीकी सेगमेंट पर स्नैप हो जाए. यह ज़रूरी नहीं कि नेविगेशन का सबसे सही या सटीक पॉइंट हो.

वेपॉइंट के बेहतर विकल्पों से इस समस्या को हल किया जा सकता है. इसके लिए, ज़्यादा कॉन्टेक्स्ट दिया जा सकता है.

नेविगेशन पॉइंट टोकन का इस्तेमाल करना

एंट्री, लोडिंग डॉक या पिक-अप के लिए तय की गई जगहों जैसे नेविगेशन के खास पॉइंट पर सटीक रूटिंग के लिए, navigationPointToken का इस्तेमाल किया जा सकता है. यह टोकन, Geocoding API के डेस्टिनेशन वाले तरीके को कॉल करके मिलता है. यह किसी जगह से जुड़े, रूट किए जा सकने वाले नेविगेशन के खास पॉइंट को दिखाता है.

नेविगेशन पॉइंट टोकन तय करने के लिए:

  1. Geocoding API के रिस्पॉन्स के डेस्टिनेशन वाले तरीके से, navigationPointToken पाएं.
  2. बिल्डर में setNavigationPointToken() तरीके का इस्तेमाल करके, Waypoint बनाएं.

ध्यान दें: setNavigationPointToken() का इस्तेमाल करते समय, setLatLng() या setPlaceIdString() का इस्तेमाल एक साथ नहीं किया जा सकता. ये तरीके, setNavigationPointToken() के साथ इस्तेमाल नहीं किए जा सकते.

// Assuming 'navPointToken' is a String obtained from the destinations method of the Geocoding API
// Assuming 'destinationName' is a String title for the waypoint

Waypoint waypointWithToken = Waypoint.builder()
    .setTitle(destinationName)
    .setNavigationPointToken(navPointToken)
    .build();

// Use this waypoint in navigator.setDestinations()

जगह के आईडी, अक्षांश, और देशांतर को एक साथ इस्तेमाल करना

वर्शन 7.4 से, Waypoint बनाते समय, जगह का आईडी, अक्षांश, और देशांतर के कोऑर्डिनेट दोनों दिए जा सकते हैं. यह तरीका तब काम आता है, जब आपको सटीक पॉइंट (अक्षांश/देशांतर) तय करना हो और साथ ही, पूरी जगह (जगह का आईडी) का कॉन्टेक्स्ट भी देना हो. इससे, Navigation SDK टूल, डेस्टिनेशन वाली बिल्डिंग को हाइलाइट करके या जगह के आईडी से जुड़े आस-पास के दिलचस्पी के पॉइंट दिखाकर, बेहतर तरीके से पहुंचने का अनुभव दे सकता है.

// Assuming 'placeId' is the Place ID String
// Assuming 'lat' and 'lng' are the double values for latitude and longitude
// Assuming 'destinationName' is a String title for the waypoint

Waypoint waypointWithPlaceIdAndLatLng = Waypoint.builder()
    .setTitle(destinationName)
    .setPlaceIdString(placeId)
    .setLatLng(lat, lng)
    .build();

// Use this waypoint in navigator.setDestinations()

ज़रूरी बातें

जब placeId और latlng दोनों दिए जाते हैं, तो:

  • रूटिंग मुख्य तौर पर, तय किए गए latlng को टारगेट करती है.
  • placeId का इस्तेमाल, पहुंचने के अनुभव को बेहतर बनाने के लिए कॉन्टेक्स्ट के तौर पर किया जाता है.
  • फ़ॉलबैक: अगर SDK टूल को पता चलता है कि दिया गया placeId, उस जगह से बहुत दूर है जिसके लिए latlng दिया गया है, तो placeId को अनदेखा कर दिया जाएगा. इस मामले में, रूटिंग सिर्फ़ latlng पर होगी. साथ ही, जगह के हिसाब से पहुंचने के अनुभव को बेहतर बनाने वाली सुविधाएं उपलब्ध नहीं होंगी.

वेपॉइंट के मान्य कॉन्फ़िगरेशन की खास जानकारी

तरीका setLatLng() setPlaceIdString() setNavigationPointToken() रूटिंग का तरीका डेस्टिनेशन को हाइलाइट करना
सिर्फ़ अक्षांश/देशांतर के कोऑर्डिनेट सेट करो मौजूद नहीं है मौजूद नहीं है तय किए गए कोऑर्डिनेट के सबसे नज़दीकी सड़क सेगमेंट पर रूट करता है अगर डेस्टिनेशन के बारे में सटीक जानकारी मिलती है, तो दिखाया जाता है
सिर्फ़ जगह का आईडी मौजूद नहीं है सेट करो मौजूद नहीं है जगह के आईडी के लिए, डिफ़ॉल्ट नेविगेशन पॉइंट पर रूट करता है जगह के आईडी से
सिर्फ़ नेविगेशन पॉइंट टोकन मौजूद नहीं है मौजूद नहीं है सेट करो टोकन से दिखाए गए नेविगेशन के सटीक पॉइंट पर रूट करता है Geocoding API के अनुरोध के ओरिजनल डेस्टिनेशन वाले तरीके में तय किए गए डेस्टिनेशन से
अक्षांश/देशांतर के कोऑर्डिनेट और जगह के आईडी को एक साथ इस्तेमाल करना सेट करो सेट करो मौजूद नहीं है तय किए गए कोऑर्डिनेट के सबसे नज़दीकी सड़क सेगमेंट पर रूट करता है जगह के आईडी से, हालांकि अगर जगह का आईडी, अक्षांश/देशांतर के कोऑर्डिनेट से बहुत दूर है, तो नहीं दिखाया जाता