Bir sürücü için adım adım yol tarifi oturumunu güvenli bir şekilde başlatmak istiyorsanız arka uçunuzun bir gezi oluşturması ve Navigation Connect API'den kimliği doğrulanmış bir gezi jetonu alması gerekir.
Navigation Connect'te gezi, tek bir hedefe yönelik navigasyon oturumunu ifade eder. Gezi oluşturmak ve oturumu yetkilendirmek için gereken kimliği doğrulanmış gezi jetonunu (authToken) almak üzere CreateTrip yöntemine CreateTripRequest mesajı gönderin. Gezi jetonunu, Google Haritalar veya Waze'in başlatma URL'sine eklemek için mobil uygulamanıza iletin.
Bu kılavuzda, benzersiz bir gezi kimliği oluşturarak ve API isteğinizi göndererek bu süreci nasıl tamamlayacağınız açıklanmaktadır.
CreateTripRequest mesajı oluşturma
Seyahat oluşturmak ve seyahat jetonu almak için CreateTripRequest mesajı oluşturup göndermek üzere aşağıdaki adımları uygulayın:
- Kimlik doğrulama: İsteğinizi yetkilendirmek için erişim jetonu almak üzere Uygulama Varsayılan Kimlik Bilgileri'ni (ADC) kullanın. Daha fazla bilgi için OAuth jetonu oluşturma başlıklı makaleyi inceleyin.
- Seyahat kimliği oluşturma: Sunucunuzda seyahati tanımlamak için UUIDv4 biçiminde benzersiz bir seyahat kimliği (
tripId) oluşturun. - Yükü oluşturun: Uygulama kimliklerinizi ve yapılandırma ayarlarınızı içeren bir JSON yükü oluşturun.
CreateTripyöntemini çağırın: Başlıkta erişim jetonu, gövdede ise yük olacak şekilde API'ye bir POST isteği gönderin.
Aşağıdaki örnekte, CreateTripRequest mesajı göndererek nasıl gezi oluşturulacağı gösterilmektedir:
#!/bin/bash
# Authenticate with ADC
access_token="$(gcloud auth application-default login --impersonate-service-account=SERVICE_ACCOUNT_EMAIL)"
# Generate a unique Trip ID
trip_id="$(uuidgen)"
# Construct the payload
payload=$(cat <<EOF
{
"androidAppId": "ANDROID_APP_ID",
"iosAppId": "IOS_APP_ID",
"config": {
"enablePubsub": true
}
}
EOF
)
# Call the CreateTrip method to request a trip token
curl -X POST "https://navigationconnect.googleapis.com/v1/projects/PROJECT_ID/trips?tripId=${trip_id}" \
-H "Authorization: Bearer ${access_token}" \
-H "Content-Type: application/json" \
-d "${payload}"
İsteğe bağlı yapılandırmalar
Aşağıdaki ayarları CreateTripRequest mesajında düzenleyerek gezi verilerini özelleştirebilirsiniz:
| Özellik | Tür | Açıklama |
|---|---|---|
| Kalan rota raporlama (yalnızca Waze) | boolean |
Etkin rota poliline ve gerçek zamanlı trafik koşullarına erişmek için |
| Seyahat güncelleme sıklığı | boolean |
Varsayılan olarak Navigation Connect, seyahat verilerini 60 saniyede bir günceller. Yüksek sıklıkta güncellemeleri (5 saniyede bir) etkinleştirmek için |
| Google Cloud Pub/Sub etkinlik oluşturma | boolean |
Google Cloud Pub/Sub'ı kullanarak seyahat etkinliği oluşturmayı etkinleştirmek için |
| Google Cloud Pub/Sub alan maskesi | FieldMask |
Yük boyutlarını yönetmek ve arka uç işleme yükünü ya da Google Cloud Pub/Sub kullanım maliyetlerini azaltmak için |
Yanıtı kullanarak gezi jetonunu alma
CreateTrip yöntemi, kimliği doğrulanmış seyahat jetonunu içeren bir yanıt döndürür. Geçiş oturumunu yetkilendirmek için bu jetonu yanıttan çıkarın
ve başlatma URL'sine eklemek üzere mobil uygulamanıza iletin.
Aşağıdaki kod örneğinde bir örnek yanıt gösterilmektedir:
{
"name": "projects/PROJECT_NUMBER/trips/TRIP_ID",
"authToken": {
"token": "BASE64_ENCODED_TRIP_TOKEN",
"expireTime": "2026-03-06T11:09:47.476942Z"
},
"state": "NEW",
"execution": {
"traveledDistanceMeters": 0,
"stopAddedInRoute": false
},
"createTime": "2026-03-05T23:09:50.768959Z",
"updateTime": "2026-03-05T23:09:50.768959Z"
}
Bu yanıtta aşağıdaki değerler yer alır:
- PROJECT_NUMBER: Projenizin benzersiz sayısal tanımlayıcısıdır. Bu, alfanümerik proje kimliğinizden farklıdır ancak aynı Google Cloud projesini temsil eder.
- TRIP_ID: Arka uçunuz tarafından UUIDv4 biçiminde oluşturulan gezi kimliği.
- BASE64_ENCODED_TRIP_TOKEN:
CreateTripyöntemi tarafından döndürülen kimliği doğrulanmış gezi jetonu (authToken.token). Google Haritalar veya Waze'de adım adım takip edilen navigasyonu başlatmak için bu jetonu mobil uygulamanıza iletin.
Sırada ne var?
Google Haritalar veya Waze'i başlatmak için seyahat jetonunu kullanın.
Google Haritalar veya Waze'i başlatma