Navigasyon noktalarına giden rota

iOS için Navigation SDK, ara noktaları belirtmek için gelişmiş yöntemler sunarak özellikle birden fazla girişi veya belirli erişim noktaları olan hedefler için daha doğru rota oluşturma ve daha iyi bir varış deneyimi sağlar. navigationPointToken kullanarak veya konum koordinatlarını yer kimliğiyle birleştirerek daha fazla bağlam ekleyip kesin konumlara yönlendirme yapabilirsiniz.

Hedef vurgulama özelliği, uygun olduğunda uygulanmaya devam eder.

Arka plan

v10.10'dan önce, konum koordinatlarını veya yer kimliğini kullanarak bir Waypoint tanımlayabiliyordunuz. Yalnızca enlem ve boylama yönlendirme bazen etkili olsa da özellikle büyük mekanlar, parklar veya birden fazla girişi olan binalar için bazen ideal olmayan bırakma veya teslim alma noktalarına yönlendirmeye neden olabilir. Sonuç, en yakın yol segmentine sabitlenebilir. Bu segment, en uygun veya doğru erişim noktası olmayabilir.

Gelişmiş rota noktası seçenekleri, daha fazla bağlam sağlamanıza olanak tanıyarak bu sorunu çözer.

Gezinme noktası jetonu kullanma

Girişler, yükleme rampaları veya belirlenmiş teslim alma alanları gibi belirli erişim noktalarına en doğru şekilde yönlendirme için navigationPointToken kullanabilirsiniz.

Bu jeton, Geocoding API'nin Destinations yöntemi çağrılarak elde edilir. Bir yerle ilişkili belirli bir yönlendirilebilir gezinme noktasını temsil eder.

Bir gezinme noktası jetonu belirtmek için:

  1. Geocoding API'nin Destinations yönteminin yanıtından navigationPointToken alın.

  2. GMSNavigationWaypoint oluştururken navigationPointToken olduğunu belirtin.

Not: Bir konum ve PlaceID ile birlikte aynı anda bir gezinme noktası jetonu belirtemezsiniz.

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"

Yer kimliği ve konumu birleştirme

v10.10'dan itibaren, ara nokta oluştururken hem yer kimliği hem de konum koordinatları sağlayabilirsiniz. Bu yöntem, genel yer bağlamını (yer kimliği) sağlamaya devam ederken kesin bir nokta (konum) belirtmek istediğinizde kullanışlıdır. Bu sayede Navigation SDK, hedef binayı vurgulayarak veya yer kimliğiyle ilgili yakındaki ilgi çekici yerleri göstererek daha zengin bir varış deneyimi sunar.

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"];

Dikkat etmeniz gereken noktalar:

Hem placeID hem de location sağladığınızda:

  • Rota öncelikle belirtilen location hedefliyor.
  • placeId, varış deneyimini iyileştirmek için bağlam olarak kullanılır.
  • Yedek: SDK, sağlanan placeId değerinin, verilen location değerinden çok uzak bir özelliğe karşılık geldiğini belirlerse placeId değeri yoksayılır. Bu senaryoda yönlendirme yalnızca location konumuna yapılır ve yere özgü varış deneyimi geliştirmeleri kullanılamaz.

Geçerli Rota Noktası Yapılandırmalarının Özeti

Spesifikasyon location placeID navigationPointToken Yönlendirme davranışı Hedef vurgulama
Yalnızca konum koordinatları grup yok yok Tanımlanan koordinatlara en yakın yol segmentine yönlendirir. Hedefin yüksek güvenle tahmin edilebildiği durumlarda gösterilir.
Yalnızca yer kimliği yok grup yok Yer kimliğinin varsayılan gezinme noktasına giden rotalar Başlangıç yeri kimliği
Yalnızca gezinme noktası jetonu yok yok grup Jetonla gösterilen tam navigasyon noktasına giden rotalar Orijinal Geocoding API'nin hedef yönteminde tanımlanan hedeften
Konum koordinatları ve yer kimliği birleştirilmiş se grup yok Tanımlanan koordinatlara en yakın yol segmentine yönlendirir. Yer kimliğinden (yer kimliği, enlem/boylam koordinatlarından çok uzaktaysa gösterilmez)