Navigation Connect'i ayarlama

Avrupa Ekonomik Alanı (AEA) geliştiricileri

Bu belgede, Navigation Connect'i kullanmaya başlamak için gereken adımlar açıklanmaktadır.

Google Haritalar Platformu ürünleri, API çağrılarının OAuth jetonu içermesini zorunlu kılarak yetkisiz kullanıma karşı korunur.

OAuth jetonu oluşturma

Navigation Connect, kimlik doğrulama için OAuth 2.0 kullanımını destekler. Google, web sunucusu gibi yaygın OAuth 2.0 senaryolarını destekler.

Bu belgede, geliştirme ortamınızda Navigation Connect çağrısına OAuth jetonunun nasıl iletileceği açıklanmaktadır. OAuth'u üretim ortamında kullanmayla ilgili talimatlar için Google'daki kimlik doğrulama yöntemleri başlıklı makaleyi inceleyin.

OAuth hakkında

Dağıtım ortamınıza bağlı olarak OAuth ile erişim jetonları oluşturup yönetmenin birçok yolu vardır.

Örneğin, Google OAuth 2.0 sistemi, uygulamanız ile bir Google hizmeti arasındaki etkileşimler gibi sunucudan sunucuya etkileşimleri destekler. Bu senaryo için bir hizmet hesabına ihtiyacınız vardır. Hizmet hesabı, bireysel bir son kullanıcıya değil, uygulamanıza ait olan bir hesaptır. Uygulamanız, hizmet hesabı adına Google API'lerini çağırır. Dolayısıyla kullanıcılar bu işleme doğrudan dahil değildir. Kimlik doğrulama yöntemleri hakkında daha fazla bilgi için Google'daki kimlik doğrulama yöntemleri başlıklı makaleyi inceleyin.

Alternatif olarak, Navigation Connect'i Android veya iOS mobil uygulamasının bir parçası olarak da kullanabilirsiniz. Farklı dağıtım ortamları için erişim jetonlarını yönetme bilgileri de dahil olmak üzere Navigation Connect ile OAuth kullanma hakkında genel bilgi için Google API'lerine erişmek için OAuth 2.0'ı kullanma başlıklı makaleyi inceleyin.

OAuth kapsamları hakkında

OAuth'u Navigation Connect ile kullanmak için OAuth jetonuna şu kapsam atanmalıdır:

https://www.googleapis.com/auth/cloud-platform

Örnek: REST API çağrılarını yerel geliştirme ortamınızda deneme

OAuth jetonu kullanarak Navigation Connect'i denemek istiyorsanız ancak jeton oluşturmak için ortam kurulumunuz yoksa bu bölümdeki prosedürü kullanarak çağrı yapabilirsiniz.

Bu örnekte, çağrı yapmak için Uygulama Varsayılan Kimlik Bilgileri (ADC) tarafından sağlanan OAuth jetonunun nasıl kullanılacağı açıklanmaktadır. İstemci kitaplıklarını kullanarak Google API'lerini çağırmak için ADC'yi kullanma hakkında bilgi edinmek için İstemci kitaplıklarını kullanarak kimlik doğrulama başlıklı makaleyi inceleyin.

Ön koşullar

ADC kullanarak bir REST isteğinde bulunmadan önce Google Cloud CLI'yı kullanarak ADC'ye kimlik bilgileri sağlayın:

  1. gcloud CLI'yı yükleyip başlatın.
  2. Kimlik bilgisi dosyanızı oluşturmak için yerel makinenizde aşağıdaki gcloud komutu çalıştırın:

    gcloud auth application-default login
  3. Giriş ekranı gösterilir. Oturum açtıktan sonra kimlik bilgileriniz ADC tarafından kullanılan yerel kimlik bilgisi dosyasına kaydedilir.

Daha fazla bilgi için Yerel geliştirme ortamı için ADC'yi ayarlama başlıklı makaleyi inceleyin.

REST isteğinde bulunma

Bu örnekte, iki istek üstbilgisi iletiyorsunuz:

  • Jetonu oluşturmak için aşağıdaki komutu kullanarak OAuth jetonunu Authorization üstbilgisinde iletin:

    gcloud auth application-default print-access-token

    Döndürülen jetonun kapsamı https://www.googleapis.com/auth/cloud-platform.

  • Faturalandırmanın etkin olduğu Google Cloud projenizin kimliğini veya adını X-Goog-User-Project üstbilgisinde iletin.

Aşağıdaki örnekte, OAuth jetonu kullanılarak Navigation Connect'e çağrı yapılmaktadır.

  1. Google Cloud projenizin kimliğini iletmek için PROJECT_ID alanını düzenleyin.

    Ayrıca, uygun şekilde aşağıdakileri de düzenleyin:

    • ANDROID_APP_ID: Uygulamanızın Android paket adı.
    • IOS_APP_ID: Uygulamanızın iOS paket kimliği.
    #!/bin/bash
    
    trip_id="$(uuidgen)"
    access_token="$(gcloud auth application-default print-access-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 '{
      "androidAppId": "ANDROID_APP_ID",
      "iosAppId": "IOS_APP_ID",
    }'
  2. curl komutunu kopyalamak için kod örneğindeki kopyalama simgesini, Kopyala simgesini seçin., tıklayın.
  3. Komutu bir terminal penceresine yapıştırıp çalıştırın.

Yanıt bir JSON nesnesi olur:

{
  "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: Projenin benzersiz uzun tamsayı tanımlayıcısı.
  • TRIP_ID: Arka uçunuz tarafından UUIDv4 biçiminde oluşturulan gezi kimliği.
  • BASE64_ENCODED_TRIP_TOKEN: createTrip yöntemi tarafından döndürülen kimliği doğrulanmış jeton. Google Haritalar veya Waze'de adım adım navigasyonu başlatmak için bu jetonu mobil uygulamanıza iletin.

Sorun giderme

İsteğiniz, son kullanıcı kimlik bilgilerinin bu API tarafından desteklenmediğiyle ilgili bir hata mesajı döndürürse ADC kurulumunuzla ilgili sorunları giderme başlıklı makaleyi inceleyin.

Sırada ne var?

Navigation Connect API'yi ayarlamanın bir sonraki adımı, arka uç altyapınız ile Google Haritalar ve Waze arasında güvenli, sunucudan sunucuya iletişimi etkinleştirmek için hizmet hesaplarınızı ayarlamaktır.

Hizmet hesabınızı oluşturma