Büyük araç rotalarında gezinme

Bu kılavuz kimler için hazırlanmıştır? Kamyon, otobüs veya diğer büyük ticari araçların sürücüleri için adım adım rota deneyimi oluşturmaktan sorumlu bir mobil geliştiriciyseniz bu kılavuzu okuyun.

Bu kılavuzun kapsamı: Bu kılavuzda, Routes API veya Route Optimization API tarafından oluşturulan kamyona özel bir rotanın nasıl alınacağı ve Android için Navigation SDK ile adım adım rota oturumunu desteklemek amacıyla nasıl kullanılacağı açıklanmaktadır.

Neler öğreneceksiniz?

Aşağıdaki görevleri nasıl yapacağınızı öğreneceksiniz:

  • Arka uç rota planlamasını uygulama içi navigasyon deneyimine bağlamak için routeToken kullanın.
  • Önceden planlanmış bir kamyon rotasını kullanmak için Navigation SDK'yı yapılandırın.
  • Navigasyon kullanıcı arayüzünde sürücüye gösterilen kamyonlara özgü kısıtlamaları anlama

Ön koşullar

Başlamadan önce aşağıdaki koşulları karşıladığınızdan emin olun:

1. Projeniz için erişim isteğinde bulunma

Büyük araç rotası, sınırlı sayıda müşteri tarafından kullanılabilir. Google Cloud projeniz için ilgi bildirmek ve erişim isteğinde bulunmak istiyorsanız iletişim formunu doldurun. Bir Google temsilcisi sonraki adımları açıklamak için sizinle iletişime geçecektir.

Google erişim izni verdikten sonra Google Cloud projenizin büyük araç rotası için temel hazırlığının yapıldığından emin olun.

Kuruluşunuz arka uç rota API'leri ve mobil Navigasyon SDK'sı için ayrı Google Cloud projeleri kullanıyorsa her bir projeyi sağlamak üzere Google ile iletişime geçin.

2. Arka uç rota oluşturma işlemini ayarlama ve rota jetonu alma

Cihazda navigasyonu başlatmadan önce arka uç sunucunuzun bir kamyon rotası oluşturması ve aşağıdaki API'lerden birini kullanarak routeToken alması gerekir:

Arka uç isteğinizde travelMode: TRUCK ile birlikte aracın fiziksel özellikleri (yükseklik, genişlik, uzunluk, ağırlık, aks sayısı ve tehlikeli madde kargosu) belirtilmelidir. Rota API'si, yanıtında arka uç sunucunuzun mobil uygulamanıza ilettiği bir routeToken döndürür.

3. Minimum SDK ve sistem gereksinimlerini karşılama

Uygulamanız, gerekli minimum Navigation SDK sürümü olan 5.2.0 veya daha yeni bir sürümü kullanmalıdır.

Ayrıca projeniz standart Navigasyon SDK'sı kurulum koşullarını karşılamalıdır.

Sınırlamalar ve operasyonel yönergeler

Başlamadan önce aşağıdaki sınırlamaları ve operasyonel yönergeleri inceleyin:

  • Coğrafi kullanılabilirlik: Büyük araç rotası, ABD'nin bitişik 48 eyaletinde (genel kullanıma sunulmuştur) ve Japonya'da (deneysel) kullanılabilir. Alaska, Hawaii veya ABD bölgelerinde kullanılamaz.
  • Sürücü tavsiyesi ve güvenliği: Sürücüler, güvenli veya yasal olması için yalnızca Navigation SDK tarafından döndürülen rotalara güvenmemelidir. Rotalar, tüm yol koşullarında araç için uygun olmayabilir ve bu rotaları takip etmek, sürücüleri alçak geçitler veya ağırlık kısıtlaması olan yollar gibi tehlikelere maruz bırakabilir. Sürücüler her zaman dikkatli olmalı ve yol işaretleri ile yerel düzenlemelere uymalıdır.
  • En iyi rotalar: Rota API'si, araç kısıtlamalarına tamamen uyan bir rota bulamadığında, kısıtlanmış segmentlerden geçebilecek "en iyi" rotayı döndürür. Örneğin, Routes API, yanıtında routeRestrictionsPartiallyIgnored işaretini ayarlar. Bu rotalarda gezinirken Navigasyon SDK'sı, ilgili kısıtlamaları vurgulamak için rota açıklama metinleri gösterir. Bu gibi durumlarda rotaları dikkatli bir şekilde planlayın ve planlama veya navigasyon için tek doğruluk kaynağı olarak işaretlenmiş bir rotayı kullanmayın.
  • Desteklenmeyen özellikler: Büyük araç rotası aşağıdaki özellikleri desteklemez:
    • Kamyon geçiş ücreti fiyatlandırması
    • Kamyon veya ağır araçlara özel hız sınırları
    • Radyoaktif tehlikeli maddeler için rota belirleme
  • Kullanım sınırları: Navigation SDK'ya gönderilen istekler, standart kullanım ve kota sınırlarına tabidir. Daha fazla bilgi için Kullanım ve faturalandırma başlıklı makaleyi inceleyin.

Kamyonlara özel kullanıcı arayüzünü (rota açıklama metinleri) gösterme

Navigasyon SDK'sı, sürücüleri yaklaşan kamyon kısıtlamaları konusunda uyarmak için haritada otomatik olarak rota açıklama metinleri adı verilen görsel uyarılar gösterir. Açıklama metinleri, planlanan rota boyunca geçerli olan kısıtlamalar için gösterilir ancak yakındaki diğer yollarda gösterilmez.

Navigasyon SDK'sı, aşağıdaki kısıtlamalar için açıklama metinleri içerir:

Kısıtlama Açıklama metni simgesi ve metni Görüntüleme koşulları
Boy Sarı renkli yükseklik kısıtlaması simgesi
Sarı = Uyarı, aracınız izin verilen maksimum yüksekliğe yakın
Kırmızı yükseklik kısıtlaması simgesi
Kırmızı = Aracınız izin verilen maksimum yüksekliğin üzerinde
Aracın yüksekliği kısıtlamaya yakın olduğunda sarı bir açıklama metni gösterilir.
Yükseklik kısıtlaması uyarısı gösteren bir harita
Rota uygun değilse ve yükseklik kısıtlamasını ihlal ediyorsa kırmızı bir açıklama metni görünür.
Yükseklik kısıtlaması ihlalini gösteren harita
Ağırlık Ağırlık kısıtlaması simgesi Aracın ağırlığı yolun sınırını aştığında kırmızı bir açıklama metni görünür.
Ağırlık kısıtlaması simgesinin gösterildiği bir harita
Kamyonlar Yasak Kamyonların girmesi yasak simgesi Ticari kamyon kısıtlaması olan bir yol segmentinde seyahat ederken kırmızı bir açıklama metni görünür.
Kamyonların girmesinin yasak olduğunu gösteren bir simgenin yer aldığı harita
Tehlikeli Maddeler Tehlikeli maddeler simgesi Aracın tehlikeli madde yükünün bir yol segmentinde yasaklandığı durumlarda kırmızı bir açıklama metni görünür.
Tehlikeli madde simgesinin gösterildiği harita

Rota jetonlarının işleyiş şekli

routeToken, Google'ın rota oluşturma arka ucu tarafından oluşturulan bir rotanın şifrelenmiş anlık görüntüsüdür. Planlanan rota geometrisinin yanı sıra aracın fiziksel boyutlarını ve kısıtlama profilini de kapsar.

İş akışı şu adımları izler:

  1. Rota isteği: Arka uç sunucunuz, Routes API'den (veya Route Optimization API) kamyon rotası ister.
  2. Jeton alma: Rota API'si, uyumlu rotayı hesaplar ve arka uç sunucunuza bir routeToken döndürür.
  3. Jetonu yönlendirme: Arka uç sunucunuz, routeToken ve hedef koordinatlarını mobil uygulamanıza iletir.
  4. SDK'ya iletme: Mobil uygulama, routeToken değerini Navigation SDK'ya iletir.
  5. Rehberliği başlatma: Navigation SDK, adım adım deneyimin tüm yönlerini yönetir. Buna rota açıklama metinlerini oluşturma ve aracın kısıtlamalarına göre dinamik yeni rota çizme de dahildir.

Dinamik yeniden hesaplamalar ve yeni rota çizme

Navigasyon etkin durumdayken trafik koşulları, kapalı yollar veya kaçırılan dönüşler, aracın planlanan rotadan sapmasına neden olabilir.

Yeni rota çizildiğinde:

  • Navigasyon SDK'sı, hedefe giden rotayı otomatik olarak yeniden hesaplar.
  • SDK, orijinal routeToken içinde kodlanmış araç özelliklerini ve boyutlarını korur.
  • Yeniden hesaplanan yeni rota; alçak geçitlerden, ağırlık sınırlaması olan köprülerden ve ticari kamyonların girmesinin yasak olduğu yollardan kaçınır.

Uygulama: Kamyonlara özel bir gezi başlatma

Büyük araç rotası jetonuyla adım adım rotayı başlatmak için aşağıdaki adımları uygulayın.

1. Adım: Arka ucunuzdan rota jetonunu alın

Mobil uygulamanız, arka uç sunucunuzdan hedef koordinatlarıyla birlikte routeToken dizesini alır. Sunucunuzda bu jetonu oluşturma hakkında daha fazla bilgi için Routes API belgelerindeki Büyük araç rotaları ve TVS'ler oluşturma başlıklı makaleyi inceleyin.

Aşağıdaki kod, örnek bir rota jetonudur:

{
  "routeToken": "CqMBCjoKCJQOor5DHcwiEhBon3XpHXFnVvDeWMwd9PpAGgz6wtnFDKIBrAHTARpCApUDSggAAAAACjcrP3gBEAQaTApKChgKDQoCCAERAAAAAACAZkAR3SQGgZUXdUASEggAEAMQBhATEBIYAkIEGgIIBSIYChZ2VEJiWlBPSkk1aU5wUVRzNTV5d0FRKAEiFQBcJuds-Efh-2QZhOMTtUCCxEVL_g"
}

2. adım: Rota jetonuyla hedefleri ayarlayın

routeToken'i navigator.setDestinationsWithToken'e geçirin. Navigation SDK'sı, rota jetonundan varış noktalarını ve büyük araç kısıtlamalarını uygulamasını sağlayan TRUCK rota profilini alır. Ara noktaları iletmeniz veya seyahat modu ayarlamanız gerekmez.

Rota jetonunu oluşturan Routes API isteğinde ara nokta seçeneklerini ayarlayın. Navigation SDK, bu bilgileri ve varış noktalarınızı jetondan alır. Büyük araçlar için aşağıdaki seçenekleri değerlendirin:

3. adım: Rota durumunu işleme ve rehberliği başlatma

Navigasyon SDK'sı rotayı hesaplamayı tamamladığında geri çağırma işlevinize bir RouteDescription iletir. getRouteStatus, Navigator.RouteStatus.OK değerini döndürdüğünde etkin adım adım rotayı başlatmak için navigator.startGuidance yöntemini çağırın.

Navigasyon SDK'sının rota jetonunuzu uyguladığını doğrulamak için Navigasyon SDK'sının rota jetonunuzu uygulayıp uygulamadığını kontrol etme bölümüne bakın.

Kod örneği

Rota jetonunu navigator.setDestinationsWithToken öğesine iletin ve rota durumu OK olduğunda rehberliği başlatın.

// Obtain the routeToken string from your backend
String routeToken = "route token returned by Routes API";

navigator.setDestinationsWithToken(
    routeToken,
    routeDescription -> {
      if (routeDescription.getRouteStatus() == Navigator.RouteStatus.OK) {
        navigator.startGuidance();
      }
    });

Araç içi ekranlar

Android Auto için Navigasyon'u kullanarak büyük araç navigasyon oturumunu araç içi ekranlara yansıtabilirsiniz.

Sonraki adımlar