Route zu Navigationspunkten

Das Navigation SDK for Android bietet erweiterte Möglichkeiten zum Angeben von Wegpunkten. Dadurch wird die Routenplanung genauer und die Ankunft am Zielort wird verbessert, insbesondere bei Zielen mit mehreren Eingängen oder bestimmten Navigationspunkten. Sie können die Routenplanung zu genauen Standorten mit einem navigationPointToken oder durch die Kombination von Breiten- und Längengradkoordinaten mit einer Orts-ID für zusätzlichen Kontext durchführen. Die Funktion zum Hervorheben des Zielorts wird gegebenenfalls weiterhin ausgeführt.

Hintergrund

Vor Version 7.4 konnten Sie einen Waypoint entweder mit Breiten- und Längengradkoordinaten oder mit einer Orts-ID definieren. Die Weiterleitung nur an einen Breiten- und Längengrad kann manchmal zu suboptimalen Abhol- oder Absetzorten führen, insbesondere bei großen Veranstaltungsorten, Parks oder Gebäuden mit mehreren Eingängen. Das Ergebnis wird möglicherweise an das nächstgelegene Straßensegment angedockt, das nicht unbedingt der beste oder richtige Navigationspunkt ist.

Die erweiterten Wegpunktoptionen bieten hier Abhilfe, da mehr Kontext angegeben werden kann.

Token für Navigationspunkt verwenden

Für die genaueste Routenführung zu bestimmten Navigationspunkten wie Eingängen, Laderampen oder ausgewiesenen Abholbereichen können Sie einen navigationPointToken verwenden. Dieses Token wird durch Aufrufen der destinations-Methode der Geocoding API abgerufen. Er stellt einen bestimmten, routingfähigen Navigationspunkt dar, der mit einem Ort verknüpft ist.

So geben Sie ein Navigation Point-Token an:

  1. Rufen Sie einen navigationPointToken aus der Antwort der Destinations-Methode der Geocoding API ab.
  2. Erstellen Sie mit der Methode setNavigationPointToken() im Builder ein Waypoint.

Hinweis:Wenn Sie setNavigationPointToken() verwenden, können Sie nicht gleichzeitig setLatLng() oder setPlaceIdString() verwenden. Diese Methoden schließen sich gegenseitig mit setNavigationPointToken() aus.

// 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()

Orts-ID und Breiten- und Längengrad kombinieren

Ab Version 7.4 können Sie beim Erstellen eines Waypoint sowohl eine Orts-ID als auch Breiten- und Längengradkoordinaten angeben. Diese Methode ist nützlich, wenn Sie einen genauen Punkt (Breiten-/Längengrad) angeben und gleichzeitig den Kontext des gesamten Orts (die Orts-ID) bereitstellen möchten. So kann das Navigation SDK die Ankunft am Zielort optimieren, indem das Zielgebäude hervorgehoben oder Sehenswürdigkeiten in der Nähe angezeigt werden, die mit der Orts-ID verknüpft sind.

// 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()

Hinweise

Wenn Sie sowohl placeId als auch latlng angeben:

  • Die Route ist hauptsächlich auf die angegebene latlng ausgerichtet.
  • Die placeId wird als Kontext verwendet, um die Ankunft zu optimieren.
  • Fallback:Wenn das SDK feststellt, dass die angegebene placeId zu weit von der angegebenen latlng entfernt ist, wird die placeId ignoriert. In diesem Fall wird die Navigation nur zum latlng fortgesetzt und die ortsspezifischen Verbesserungen der Ankunftsbenachrichtigungen sind nicht verfügbar.

Zusammenfassung der gültigen Wegpunktkonfigurationen

Methode setLatLng() setPlaceIdString() setNavigationPointToken() Routingverhalten Hervorhebung des Ziels
Nur Breiten- und Längengradkoordinaten set nicht vorhanden nicht vorhanden Routen zum Straßenabschnitt, der den definierten Koordinaten am nächsten liegt Wird angezeigt, wenn das Ziel mit hoher Wahrscheinlichkeit abgeleitet werden kann.
Nur Orts-ID nicht vorhanden set nicht vorhanden Routen zum Standardnavigationspunkt für die Orts-ID Von Orts-ID
Nur Navigationspunkt-Token nicht vorhanden nicht vorhanden set Routen zum genauen Navigationspunkt, der durch das Token dargestellt wird Vom Zielort, der in der ursprünglichen Anfrage der destinations-Methode der Geocoding API definiert ist
Kombination aus Breiten-/Längengradkoordinaten und Orts-ID set set nicht vorhanden Routen zum Straßenabschnitt, der den definierten Koordinaten am nächsten liegt Über die Orts-ID, wird jedoch nicht angezeigt, wenn die Orts-ID zu weit von den Breiten-/Längenkoordinaten entfernt ist