रास्ते की योजना बनाना

कभी-कभी, आप उस रूट की योजना बना सकते हैं जो आपका ऐप्लिकेशन उपयोगकर्ताओं को उपलब्ध कराता है. इसका इस्तेमाल करके रूट एपीआई (या Routes Preferred API) का रूट टोकन, यह बताने में आपकी मदद कर सकता है आपके पहले से तय रास्ते के लिए दो चीज़ें:

  • रास्ते के लिए पॉलीलाइन

  • आपके रास्ते के लक्ष्य

उदाहरण के लिए, यहां रूटिंग लक्ष्यों के कुछ उदाहरण दिए गए हैं जो आपके पास हो सकते हैं:

  • डिलीवरी में लगने वाले समय को कम करना: खाना डिलीवर करने वाला कोई कारोबार खाना डिलीवर करने में लगने वाला समय.

  • यात्रा में लगने वाले समय या ईंधन की खपत को कम से कम करना: लॉजिस्टिक से जुड़ा कारोबार ये ड्राइवरों की दक्षता बढ़ाने और उनके ईंधन के खर्च को कम करने में मदद करते हैं.

  • डेस्टिनेशन तक पहुंचने में लगने वाले समय को कम करना: हो सकता है कि सेवा डिस्पैच ऑपरेशन की मदद से इससे ऑपरेटर को जॉब के अनुरोध पर पहुंचने में लगने वाला समय कम करने में मदद मिलती है.

  • लागत कम करना और सुरक्षा बढ़ाना: राइड शेयर करने वाला कारोबार, शायद उन लोगों को ऐसा रास्ता जिस पर यात्रियों के लिए कम किराया लगता है और सुरक्षा के लिहाज़ से कुछ जगहों पर जाने से बचा जा सकता है की वजह.

रूट टोकन से कोई रूट प्लान करने के बारे में ज़्यादा जानकारी के लिए, देखें रूट टोकन का अनुरोध करें.

रूट के मकसद के लिए रूट टोकन का इस्तेमाल क्यों करना चाहिए

रूट या रूट के लिए प्राथमिकता वाले एपीआई से मिले रूट टोकन की मदद से, आपको ज़्यादा सुविधाएं मिलती हैं दिए गए रास्ते पर नियंत्रण:

  • नेविगेशन SDK टूल का इस्तेमाल करने के लिए, पहले से ही रूट का प्लान बना लें को भी दिया जा सकता है.

  • नेविगेशन SDK टूल के इस्तेमाल के लिए सबसे अच्छा रास्ता चुनें. अगर रूट एपीआई में रूट जनरेट करते समय रूट टोकन का अनुरोध किया जाता है, जनरेट किए गए हर रूट के लिए, आपको रूट टोकन मिलता है. इसके बाद, उस टोकन को चुना जा सकता है उस रूट के लिए जिसका उपयोग आप तब करना चाहते हैं, जब आप इसे नेविगेशन SDK टूल.

  • पहले से ही किराये का अनुमान लगा लें. इसमें ETA और दूरी का अनुमान भी शामिल करें. हालांकि, असल लागत और समय अलग-अलग हो सकते हैं, लेकिन यह अनुमान, अनुमानित और असल रास्ते की लागत.

  • रास्ते के ज़्यादा बेहतर मकसद के बारे में बताएं, जैसे कि ईको रूटिंग या सबसे छोटा रूट

रूट एपीआई रूट टोकन के काम करने का तरीका

रूट एपीआई या रूट पसंदीदा एपीआई का इस्तेमाल किया जा सकता है का इस्तेमाल करें. रूट एपीआई यह दिखाता है कि रूट टोकन है, जिसे नेविगेशन SDK टूल को पास करके गाइड किया जा सकता है आपकी गाड़ी को रूट करता है.

यहां बताया गया है कि जब आप रूट एपीआई:

  1. रूट एपीआई एक एन्क्रिप्ट (सुरक्षित) किया गया रूट टोकन दिखाता है, जिसमें रूट शामिल होता है पॉलीलाइन और रूट के लक्ष्य.

  2. नेविगेशन SDK टूल को रूट टोकन पास किया जाता है.

  3. नेविगेशन SDK टूल, रूट का पता लगाता है या रूट के तौर पर मौजूद नहीं होता बदलती स्थितियों के कारण उपलब्ध होता है, तो यह सबसे अच्छी तरह से मेल खाने वाले रूट

  4. रास्ता चलाते समय, ट्रैफ़िक या सड़क की स्थितियों में बदलाव होने पर या कोई वाहन पहले से तय किए गए रास्ते से हट जाता है, लेकिन रूट में लगातार बदलाव किए जाते हैं टोकन में दिए गए रूट के मकसद के आधार पर सबसे अच्छे रूट को मैच करने की कोशिश करेगा.

यह प्रक्रिया आपको बताती है कि असल रास्ता आपके पहले से तय किए गए रास्ते के कितना करीब है.

किसी पहले से तय रास्ते का सटीक रूप से पालन क्यों नहीं किया जा सकता

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

रूट टोकन का इस्तेमाल करके रूट प्लान करना

आप रूट टोकन बनाकर और फिर उसे पास करके किसी रूट की योजना बना सकते हैं नेविगेशन SDK टूल का इस्तेमाल करें. इसके बारे में नीचे बताया गया है:

पहला चरण: रूट या रूट के लिए प्राथमिकता वाले एपीआई का इस्तेमाल करके रूट टोकन बनाना

  1. इनमें से किसी एक तरीके से रूट टोकन का अनुरोध करें:

  2. किसी रास्ते के इस्तेमाल की ज़रूरी शर्तें पूरी करने के लिए, रास्ते का अनुरोध सेट अप करें टोकन:

    • travel_mode को DRIVING पर सेट करें
    • routing_preference को TRAFFIC_AWARE या TRAFFIC_AWARE_OPTIMAL पर सेट करें
    • वेपॉइंट का इस्तेमाल न करें

दूसरा चरण: नेविगेशन SDK टूल पर रूट टोकन पास करना

  1. रूट टोकन सेव करें: नेविगेशन SDK टूल में, कोई स्ट्रिंग सेट अप करें रूट टोकन सेव करने के लिए. उदाहरण के लिए:

    let routeToken = "route token returned by Routes API"

    रूट टोकन के दिखाए गए का उदाहरण:

    {
    // Other fields
    "routeToken": "CqMBCjoKCJQOor5DHcwiEhBon3XpHXFnVvDeWMwd9PpAGgz6wtnFDKIBrAHTARpCApUDSggAAAAACjcrP3gBEAQaTApKChgKDQoCCAERAAAAAACAZkAR3SQGgZUXdUASEggAEAMQBhATEBIYAkIEGgIIBSIYChZ2VEJiWlBPSkk1aU5wUVRzNTV5d0FRKAEiFQBcJuds-Efh-2QZhOMTtUCCxEVL_g",
    }
    
  2. इसका इस्तेमाल करके नेविगेशन SDK को रूट टोकन पास करें mapView.navigator setDestinations विधि, समान गंतव्य तय करना वेपॉइंट जिनका इस्तेमाल आपने रूट टोकन बनाते समय किया था:

    mapView.navigator?.setDestinations([waypoint1, waypoint2], routeToken: routeToken, callback: {...})

Navigator.setDestinations तरीका, अनुरोध की स्थिति दिखाता है. अगर उपयोगकर्ता की जगह से, बताए गए डेस्टिनेशन तक कोई रास्ता मिलता है, यह RouteStatus.OK दिखाता है.

इस तरीके के बारे में ज़्यादा जानकारी के लिए, Navigator.setDestinations देखें.

उदाहरण

नीचे दिए गए कोड उदाहरण, पहले से तय किए गए रास्ते को वापस पाने का तरीका बताते हैं.

Swift

let location = CLLocationCoordinate2D(latitude: 47.67, longitude: -122.20)
let waypoint1 = GMSNavigationWaypoint(location: location, title: "waypoint from location")!
let waypoint2 = GMSNavigationWaypoint(placeID: "samplePlaceID", title: "waypoint from Place ID")!

let routeToken = "route token returned by Routes API"
mapView.navigator?.setDestinations([waypoint1, waypoint2], routeToken: routeToken, callback: {...})

Objective-C

CLLocationCoordinate2D location = CLLocationCoordinate2DMake(47.67, -122.20);
GMSNavigationWaypoint *waypoint1 = [[GMSNavigationWaypoint alloc] initWithLocation:coordinate title:@"waypoint from location"];
GMSNavigationWaypoint *waypoint2 = [[GMSNavigationWaypoint alloc] initWithPlaceID:@"samplePlaceID"
                                                                            title:@"waypoint from Place ID"];
NSString *routeToken = @"route token returned by Routes API";

[mapView.navigator setDestinations:@[waypoint1, waypoint2]
                         routeToken:routeToken
                           callback:^(GMSRouteStatus routeStatus){...}];

रूट टोकन और नेविगेशन SDK टूल कैसे इंटरैक्ट करते हैं

यहां बताया गया है कि नेविगेशन SDK टूल से रूट कैसे जनरेट किया गया और रूट टोकन से इंटरैक्ट करने में रूट

  • पहले से सेट किए गए किसी भी डेस्टिनेशन को बदल देता है.

  • इस्तेमाल किया जाता है, जहां से वाहन शुरू होता है.

  • सड़क और ट्रैफ़िक की स्थितियों के हिसाब से बदलाव हो सकता है. यहां जाएं: तय किए गए रास्ते को सही तरीके से फ़ॉलो क्यों नहीं किया जा सकता.

  • रूटिंग से जुड़े इन विकल्पों को ज़रूरत न होने के तौर पर अनदेखा करता है:

    • avoidsHighways
    • avoidsTolls
    • avoidsFerries
    • licensePlateRestriction
  • फ़ॉलो करते हैं:

    • वेपॉइंट से जुड़े विकल्प, जैसे कि सड़क के किनारे की प्राथमिकता.

    • रास्ते के मकसद. अगर नेविगेशन SDK टूल को वापस लौटाए गए रूट को अडजस्ट करता है, तो यह रूट के उन मकसद का इस्तेमाल करता है जिन्हें आपने तय किया था रूट टोकन का अनुरोध कर रहा है. इसलिए, आपको वेपॉइंट से जुड़े विकल्प, जिन्हें आपने Routes API में बताया है.