Bei der Berechnung von Routen (einschließlich Neuberechnung von Routen) wird die Route mit der geringsten Bearbeitungszeit als beste Standardroute zurückgegeben. Sie können jedoch die Routingstrategie so ändern, dass stattdessen die kürzere der alternativen Routen zurückgegeben wird.
Der Begriff kürzer bedeutet, dass die Route gemäß unserem Standardkostenmodell die kürzeste unter den optimalen Routingergebnissen ist. Die kürzere Route ist möglicherweise nicht die absolute kürzeste, da sie unter Umständen eine schlechte Alternative sein könnte. Wenn beispielsweise die absolut kürzeste Route 10 km ist und 50 Minuten für die Navigation benötigt, während die optimale kürzere Route 15 km ist und 20 Minuten für die Navigation benötigt wird, ist es kein guter Kompromiss, 30 Minuten für die Reduzierung von 5 km zu verschwenden.
Wenn Sie die Routenstrategie für eine Fahrt festgelegt haben, ändert sie sich erst nach Abschluss der Fahrt. Wenn Sie die Routingstrategie ändern möchten, müssen Sie die Ziele löschen und mit der neuen Routingstrategie wieder zurücksetzen.
Routingstrategie festlegen
Sie können bei der Navigation die Routenführung mit einer kürzeren Strategie planen. Legen Sie dazu beim Aufrufen von setDestinations()
RoutingOptions.routingStrategy
fest.
RoutingOptions.routingStrategy
verwendet einen der folgenden zwei Aufzählungswerte:
Aufzählungswert | Beschreibung |
---|---|
RoutingStrategy.DEFAULT_BEST | Ranking von Routen gemäß dem Standardkostenmodell des Navigation SDK. Dies ist die Standardrouting-Strategie. |
RoutingStrategy.SHORTER | Routen werden nach Entfernung sortiert. Die Route mit dem höchsten Rang ist die kürzeste zurückgegebene Route. |
Beispiel
Das folgende Codebeispiel zeigt, wie die kürzere Routingstrategie festgelegt wird.
RoutingOptions routingOptions = new RoutingOptions();
routingOptions.routingStrategy(RoutingStrategy.SHORTER);
navigator.setDestinations(destinations, routingOptions, displayOptions);
Routendetails
Wenn die kürzere Route zu lang ist, ist die standardmäßige beste Route die bessere Wahl. Sie können Routingstrategien vergleichen, indem Sie getRouteInfo()
aufrufen, um Routendetails für jede Strategie abzurufen. Dazu gehören die Dauer und die Entfernung zu einem Ziel-Wegpunkt.
Routendetails werden abgerufen
Sie können Routendetails für beide Routingstrategien (die standardmäßige beste Route und die kürzere Route) für einen einzelnen Wegpunkt abrufen. Diese Details stammen aus RouteInfo
und werden in einem ListenableResultFuture
zurückgegeben.
Beispiel
Das folgende Codebeispiel zeigt, wie Sie Routendetails für jede der beiden Routingstrategien abrufen.
ListenableResultFuture<RouteInfo> routeInfoFuture =
navigator.getRouteInfo(waypoint, routingOptions);
Format der Zusatzinformationen für Routen
Bei der kürzeren Routenroute werden in den Zusatzinformationen entlang der Route Entfernungsdetails angezeigt. Sie können aber stattdessen Zusatzinformationen für erweiterte Textanzeigen verwenden.
Format des Routen-Callouts konfigurieren
Sie können das Format des Routen-Callouts ändern, indem Sie setRouteCalloutInfoFormat
in NavigationView
(oder in NavigationFragment
) aufrufen. setRouteCalloutInfoFormat
verwendet einen der folgenden Aufzählungswerte:
Aufzählungswert | Beschreibung |
---|---|
RouteCalloutInfoFormat.DEFAULT | Zeigt die verbleibende Zeit an, wenn die standardmäßige Strategie für die beste Routenroute verwendet wird. Zeigt die verbleibende Entfernung an, wenn die Routenführungsstrategie mit einer kürzeren Route verwendet wird. |
RouteCalloutInfoFormat.TIME | Zeigt die verbleibende Zeit an. |
RouteCalloutInfoFormat.DISTANCE | Zeigt die verbleibende Entfernung an. |
Beispiel
Im folgenden Codebeispiel wird gezeigt, wie das Format des Routen-Callouts konfiguriert wird.
mNavFragment.setRouteCalloutInfoFormat(RouteCalloutInfoFormat.TIME);