রুট টোকেন

আপনি যখন রাইড শেয়ারিং ট্রিপের জন্য সর্বোত্তম রুট নির্ধারণ করছেন, তখন দ্রুততম রুট সর্বদা সেরা বিকল্প নাও হতে পারে। আপনি আপনার রুট কাস্টমাইজ করতে চাইতে পারেন. Routes Preferred API আপনাকে ComputeCustomRoutes পদ্ধতি ব্যবহার করে একটি রুট উদ্দেশ্য নির্দিষ্ট করে একটি রুট কাস্টমাইজ করতে দেয়।

আপনি যখন একটি কাস্টম রুট তৈরি করেন, তখন রুট পছন্দের API একটি রুট টোকেন তৈরি করে। তারপরে আপনি Android এর জন্য নেভিগেশন SDK-এ টোকেনটি পাস করতে পারেন এবং কাস্টম রুটটি পুনরুদ্ধার করতে পারেন।

একটি কাস্টম রুট তৈরির বিষয়ে আরও তথ্যের জন্য, কাস্টম রুট তৈরি করুন দেখুন।

একটি কাস্টম রুট পুনরুদ্ধার করা হচ্ছে

আপনি Navigator.setDestinations পদ্ধতি ব্যবহার করে Android এর জন্য নেভিগেশন SDK-এ একটি রুট টোকেন পাস করে একটি কাস্টম রুট পুনরুদ্ধার করতে পারেন।

setDestinations(List<Waypoint> destinations, CustomRoutesOptions customRoutesOptions, DisplayOptions displayOptions);

কাস্টম রুট পূর্বে সেট করা যেকোনো গন্তব্যকে ওভাররাইড করে। এটি সংশ্লিষ্ট ড্রাইভারের শুরুর অবস্থান এবং রাস্তা এবং ট্রাফিক অবস্থা ব্যবহার করে।

Navigator.setDestinations নিম্নলিখিত পরামিতিগুলি নেয়:

প্যারামিটার বর্ণনা
গন্তব্য নতুন গন্তব্য তালিকা সেট করা হবে.
কাস্টম রুট অপশন যে বিকল্পগুলি একটি পূর্বনির্ধারিত রুট পুনরুদ্ধার করতে ব্যবহার করা হবে, রুট পছন্দের API দ্বারা প্রত্যাবর্তিত একটি টোকেনের উপর ভিত্তি করে।
প্রদর্শনের বিকল্পগুলি রুট প্রদর্শন করতে যে বিকল্পগুলি ব্যবহার করা হবে।

Navigator.setDestinations পদ্ধতি অনুরোধের স্থিতি প্রদান করে। যদি ব্যবহারকারীর অবস্থান থেকে প্রদত্ত গন্তব্যে একটি রুট পাওয়া যায় তবে এটি RouteStatus.OK ফেরত দেয়।

উদাহরণ

নিম্নলিখিত কোড উদাহরণটি দেখায় কিভাবে একটি কাস্টম রুট পুনরুদ্ধার করতে হয়।

ArrayList <Waypoint> destinations = Lists.newArrayList();
Waypoint waypoint1 =
   Waypoint.builder()
      .setLatLng(10, 20)
      .setTitle("title")
      .setVehicleStopover(true)
      .build();
destinations.add(waypoint1);
Waypoint waypoint2 =
   Waypoint.builder()
      .setPlaceId("ChIJYV-J-ziuEmsRIMyoFaMedU4")
      .setTitle("title")
      .setVehicleStopover(true)
       .build()
destinations.add(waypoint2);

String routeToken = "route token returned by RoutesPreferred API";

CustomRoutesOptions customRoutesOptions =
   CustomRoutesOptions.builder()
      .setRouteToken(routeToken)
      .setTravelMode(CustomRoutesOptions.TravelMode.TWO_WHEELER)
      .build();

// Existing flow to get a Navigator.
NavigationApi.getNavigator(...);
// Existing flow for requesting routes.
ListenableResultFuture<RouteStatus> routeStatusFuture =
          navigator.setDestinations(destinations, customRoutesOptions);

// Or with display options.
DisplayOptions displayOptions = new DisplayOptions();

ListenableResultFuture<RouteStatus> routeStatusFuture =
          navigator.setDestinations(destinations, customRoutesOptions, displayOptions);