Zu Navigationspunkten navigieren

Das Navigation SDK for iOS bietet verbesserte Möglichkeiten zum Festlegen von Wegpunkten. Dadurch wird die Routenplanung genauer und die Ankunft am Zielort wird erleichtert, insbesondere bei Zielen mit mehreren Eingängen oder bestimmten Zugangspunkten. Sie können die Routenplanung zu genauen Standorten mit einem navigationPointToken oder durch Kombinieren von Standortkoordinaten mit einer Orts-ID für zusätzlichen Kontext durchführen.

Die Funktion zum Hervorheben des Ziels wird weiterhin ausgeführt, sofern zutreffend.

Hintergrund

Vor Version 10.10 konnten Sie einen Waypoint entweder mit Standortkoordinaten oder mit einer Orts-ID definieren. Die Weiterleitung nur anhand von 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 günstigste oder richtige Zugangspunkt ist.

Mit den erweiterten Wegpunktoptionen können Sie mehr Kontext angeben.

Navigationspunkt-Token verwenden

Für die genaueste Routenführung zu bestimmten Zugangspunkten 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. Geben Sie navigationPointToken an, wenn Sie ein GMSNavigationWaypoint erstellen.

Hinweis:Sie können nicht gleichzeitig ein Navigationspunkt-Token zusammen mit einem Ort und einer PlaceID angeben.

Swift

// Create a waypoint using a navigation endpoint token
let waypointTwo = GMSNavigationWaypoint(
  navigationPointToken: "ChIJALijSXPhQkARHmIozCCbXsASEgkFVjYHGH6PgBFrbM7wl3.."
  title: "Sydney Opera House")

// Route to the waypoint
navigator.setDestinations([waypointTwo]) { [weak self] routeStatus in
   self?.handleRouteCallback(status: routeStatus)
}

Objective-C

GMSNavigationWaypoint *waypointTwo = [[GMSNavigationWaypoint alloc] initWithNavigationPointToek:@"sampleNavigationPointToken"

Orts-ID und Standort kombinieren

Ab Version 10.10 können Sie beim Erstellen eines Wegpunkts sowohl eine Orts-ID als auch Standortkoordinaten angeben. Diese Methode ist nützlich, wenn Sie einen genauen Punkt (den Standort) angeben und gleichzeitig den Kontext des gesamten Orts (die Orts-ID) bereitstellen möchten. So kann das Navigation SDK eine bessere Ankunftserfahrung bieten, indem das Zielgebäude hervorgehoben oder POIs in der Nähe angezeigt werden, die mit der Orts-ID verknüpft sind.

Swift

// Create a waypoint using both the latlng and placeID
let waypoint = GMSNavigationWaypoint(
  location: CLLocationCoordinate2DMake(-33.85657945261524, 151.21535034203333),  
  placeID: "ChIJ3S-JXmauEmsRUcIaWtf4MzE",
  title: "Sydney Opera House")

// Route to the waypoint
navigator.setDestinations([waypoint]) { [weak self] routeStatus in
   self?.handleRouteCallback(status: routeStatus)
}

Objective-C

CLLocationCoordinate2D location = CLLocationCoordinate2DMake(47.67, -122.20);
GMSNavigationWaypoint *waypoint = [[GMSNavigationWaypoint alloc] initWithLocation:placeID:coordinate title:@"waypoint from location and placeiD"];

Wichtige Hinweise:

Wenn Sie sowohl placeID als auch location angeben:

  • Die Route ist hauptsächlich auf die angegebene location 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 location entfernt ist, wird die placeId ignoriert. In diesem Fall wird die Routenführung nur zum location fortgesetzt und die ortsspezifischen Verbesserungen für die Ankunft sind nicht verfügbar.

Zusammenfassung der gültigen Wegpunktkonfigurationen

Spezifikation location placeID navigationPointToken Routingverhalten Hervorhebung des Ziels
Nur Standortkoordinaten 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 Standortkoordinaten und Orts-ID se 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