Navigasyon noktalarına giden rota

Android için Navigasyon SDK'sı, ara noktaları belirtmek için gelişmiş yöntemler sunar. Bu sayede, özellikle birden fazla girişi veya belirli navigasyon noktaları olan hedefler için daha doğru rota oluşturma ve daha iyi bir varış deneyimi sağlanır. navigationPointToken kullanarak veya enlem ve boylam koordinatlarını yer kimliğiyle birleştirerek ek bağlam için tam konumlara yönlendirme yapabilirsiniz. Gerekirse hedef vurgulama özelliği kullanılmaya devam eder.

Arka plan

7.4 sürümünden önce, enlem ve boylam koordinatları ya da yer kimliği kullanarak 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 yol açabilir. Sonuç, en yakın yol segmentine sabitlenebilir. Bu segment, en uygun veya doğru gezinme noktası olmayabilir.

Gelişmiş rota noktası seçenekleri, daha fazla bağlam bilgisi sağlanmasına olanak tanıyarak bu sorunu giderir.

Gezinme noktası jetonu kullanma

Girişler, yükleme rampaları veya belirlenmiş teslim alma alanları gibi belirli gezinme 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 yanıtının Destinations yönteminden navigationPointToken alın.
  2. Oluşturucuda setNavigationPointToken() yöntemini kullanarak Waypoint oluşturun.

Not: setNavigationPointToken() kullanırken aynı anda setLatLng() veya setPlaceIdString() kullanamazsınız. Bu yöntemler setNavigationPointToken() ile karşılıklı olarak birbirini dışlar.

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

Yer kimliği ile enlem ve boylamı birleştirme

v7.4'ten itibaren Waypoint oluştururken hem yer kimliği hem de enlem ve boylam koordinatları sağlayabilirsiniz. Bu yöntem, genel yerin bağlamını (yer kimliği) sağlamaya devam ederken kesin bir nokta (enlem/boylam) 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 sunabilir.

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

Dikkat edilmesi gereken noktalar

Hem placeId hem de latlng sağladığınızda:

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

Geçerli ara nokta yapılandırmalarının özeti

Yöntem setLatLng() setPlaceIdString() setNavigationPointToken() Yönlendirme davranışı Hedef vurgulama
Yalnızca enlem/boylam 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
Enlem/boylam koordinatları ve yer kimliği birleştirilmiş grup 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)