Sorun giderme

Hatalar

Hata durumunda, standart biçimde bir hata yanıtı gövdesi döndürülür ve HTTP durum kodu bir hata durumuna ayarlanır.

Yanıt, aşağıdaki anahtarlara sahip tek bir error nesnesine sahip bir nesne içerir:

  • code: Bu, yanıtın HTTP durumuyla aynıdır.
  • message: Hatanın kısa bir açıklaması.
  • status: Hatanın yapısını belirten bir durum kodu.

Örneğin, geçersiz bir placeId parametresi göndermek aşağıdaki hatayı döndürür:

{
  "error": {
    "code": 400,
    "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"",
    "status": "INVALID_ARGUMENT"
  }
}

Olası hatalar aşağıdakileri içerir:

Kod Durum Mesaj Sorun giderme
400 INVALID_ARGUMENT Sağladığınız anahtar geçersiz. API anahtarınız geçerli değil veya isteğe dahil edilmedi. Lütfen anahtarın tamamını eklediğinizden ve bu anahtar için API'yi etkinleştirdiğinizden emin olun.
400 INVALID_ARGUMENT "\"path\" parametresi geçersiz bir değer içeriyor: ☃" İsteğinizde geçersiz bağımsız değişkenler vardı. Bu hatanın en olası nedenleri şunlardır:
  • path parametrenizle ilgili bir sorun var.
    Lütfen en az 1 ve 100'den az puanınız olduğundan emin olun. Her nokta, virgülle ayrılmış bir sayı çifti olmalıdır. Örneğin: 48.409114,-123.369158. Noktalar dikey çizgiyle ayrılmalıdır: "|".
  • İsteğiniz geçersiz bir placeId içeriyordu.
  • İsteğiniz hem placeId hem de path içeriyordu. Her istek için bu parametrelerden yalnızca biri belirtilebilir.

Artık mevcut olmayan bir yol veya yol olmayan bir yer için placeId geçilirse bu hata döndürülmez.

403 PERMISSION_DENIED Kayıtlı olmayan istek engellendi. Lütfen Google Developers Console'u kullanarak kaydolun. İstek, aşağıdaki nedenlerden biri veya daha fazlası nedeniyle reddedildi:
  • API anahtarı eksik veya geçersiz.
  • Hesabınızda faturalandırma etkinleştirilmedi.
  • Kendi kendine belirlenen kullanım sınırı aşıldı.
  • Belirtilen ödeme yöntemi artık geçerli değil (örneğin, bir kredi kartının süresi dolmuş).

Google Haritalar Platformu ürünlerini kullanabilmeniz için hesabınızda faturalandırmanın etkinleştirilmiş olması ve tüm isteklerin geçerli bir API anahtarı içermesi gerekir. Bunu düzeltmek için aşağıdaki adımları uygulayın:

404 NOT_FOUND Bu hizmet için HTTPS gereklidir. İstekleri http://roads.googleapis.com/ yerine https://roads.googleapis.com/ adresine gönderdiğinizden emin olun.
429 RESOURCE_EXHAUSTED Proje isteği sınırlarına ulaşıldığı için istek kısıtlandı. Google Cloud Platform Console'da yapılandırdığınız istek sınırını aştınız. Bu sınır genellikle günlük istek, 100 saniyedeki istek ve kullanıcı başına 100 saniyedeki istek sayısı şeklinde belirlenir. Bu sınır, tek veya küçük bir kullanıcı grubunun günlük kotanızı tüketmesini önlerken tüm kullanıcılara makul düzeyde erişim verilmesini sağlayacak şekilde yapılandırılmalıdır. Bu sınırları yapılandırmak için API Kullanımını Sınırlama bölümüne bakın.

Eksponansiyel geri yükleme

İstekler başarısız olduğunda istekleri eksponansiyel geri yükleme ile yeniden denemeniz gerekir. Örneğin, bir istek bir kez başarısız olursa ve bir saniye sonra yeniden deneyin, tekrar başarısız olursa iki saniye, ardından dört saniye sonra yeniden deneyin. Böylece, birçok istemci istekleri çok hızlı bir şekilde yeniden denemeye çalıştığından, bozuk isteklerin veya geniş çaplı hataların Google'ın sunucularını boğmaması sağlanır.

Sorun giderme ile ilgili SSS

Uygulama sorunları

Aracımın konum bilgisini hangi sıklıkta almalıyım?
Yüksek kaliteli yola tutturma sonuçları için her 1-10 saniyede bir önerilir.
Sorgu başına gönderebileceğim puan sayısıyla ilgili bir sınır var mı?
Evet, bir sorgu en fazla 100 puan içerebilir.
Yakaladığım enlem/boylam çiftlerimi depolamak için hangi hassasiyet düzeyini kullanmalıyım?
Tutulan yolların, maksimum yakınlaştırma düzeyinde bile tüm yakınlaştırma düzeylerinde yolları izlediğinden emin olmak için, alınan enlem/boylam çiftlerini 7 ondalık basamakta depolamanız gerekir.
Yapışkan yolları görüntülemek için kodlanmış çoklu çizgileri kullanabilir miyim?
Kodlanmış çoklu çizgiler yalnızca 5 ondalık basamak hassasiyetiyle belirtilir. Bu, yaklaşık 2 metrelik bir hataya neden olur. Bu nedenle, kırpılmış yollarınızın yolu yüksek yakınlaştırma düzeylerinde takip etmesini istiyorsanız, kodlanmış çoklu çizgiler uygun değildir.

Genel sorunlar

Bazı noktalar tutturulmuyor veya kesilen yollarda boşluklarım var. Bunu nasıl düzeltebilirim?
  • Noktalarınızı zamanlanmış aralıklarda örnekleme yapıyorsanız noktalarınızın daha kısa aralıklarla (her 1-10 saniyede bir) örneklendiğinden emin olun. Daha uzun bir aralık kullanılırsa (örneğin, 60 saniye) yola geçme algoritması, gidilen yolları yeterli doğrulukla belirleyemeyebilir.
  • Nokta oluşturmak için bir haritayı manuel olarak tıklıyorsanız, birkaç noktalı veya seyrek nokta içeren yollar oluşturmak çok kolaydır. Tutturma algoritması en iyi şekilde, birbirine yakın noktalar için çalışır. Yollarınızı test etmek için Yollara Geçiş demosunu deneyin veya Yollar denetleyicisini kullanın.
Yakınlaştırdığımda yollarım neden sivri uçlu veya yoldan biraz uzak görünüyor?
  • Tutturulan enlem/boylam çiftlerini görüntülemeden önce doğruluk oranını kesiyor musunuz? Tutulan enlem/boylam çiftlerinin 7 ondalık basamaktan daha düşük bir hassasiyette depolanması, alınan yol haritada görüntülendiğinde hassasiyet hatalarına neden olur.
  • Kodlanmış çoklu çizgiler kullanıyor musunuz? Kodlanmış çoklu çizgiler, enlem/boylam çiftlerini 5 ondalık basamak olacak şekilde kısaltır. Bu durum, birkaç metrelik bir hataya neden olur ve yüksek yakınlaştırma düzeylerinde yoldan sivri uçlu veya hafif kayma çizgilere neden olur.

Yukarıdakilerin hiçbiri geçerli değilse, harita desenleri yakın zamanda güncellenmiş ve bu nedenle, yapışma için kullanılan yol diziniyle uyumlu olmayabilir. Sorgularınızın yalnızca birkaçı etkileniyorsa bunun nedeni büyük olasılıkla budur. Google Haritalar düzenli olarak güncellendiğinden ara sıra gerçekleşebilir ve bir haritadaki eski yollara düzenli olarak bakarsanız (örneğin, birkaç hafta önce çekilmiş yollara) daha sık görülebilir. En iyi görselleştirmeyi elde etmek için, harita parçaları ile yapışmada kullanılan yol dizini arasındaki tutarsızlıkları en aza indirmek amacıyla, eski yolları harita üzerinde göstermeden hemen önce yeniden yakalamanız gerekir.

X yolunun hız sınırının yanlış gösterilmesine ne neden olabilir?
Hız sınırları, doğruluk ve kapsam açısından farklılık gösteren çeşitli kaynaklardan gelir. Belirli bir yol türü için hız sınırları gibi veya belirli bir bölgede sürekli olarak yanlış bir durum görürseniz lütfen aşağıdaki adımları uygulayarak bize bildirin:
  1. Masaüstü bilgisayarınızda Google Haritalar'ı VEYA Android için Google Haritalar uygulamasını açın.
  2. Sol taraftaki menüyü açın.
  3. Geri bildirim gönder'i seçin. Not: Giriş yapmanız istenebilir.
  4. Haritayı düzenle'yi seçin.
  5. Düzenlemek istediğiniz yol segmentini seçin.
  6. İleri'yi seçin.
  7. "Diğer" alanında, söz konusu yol için hız sınırının yanlış olduğunu belirtin.
  8. Gönder'i seçin.
Ayrıca diğer sorunları da (örneğin, yolun adı yanlışsa, yanlış çizilmişse, kapalıysa veya özelse) bildirebilirsiniz.
Kestiğim yol neden yolu takip etmek yerine kenarları kesiyor?
Bu sorunu düzeltmek için aşağıdakileri kontrol edin:
  • interpolate parametresinin true olarak ayarlandığından emin olun.
  • Orijinal veri noktalarınızın yeterince yakın aralıklarla (her 1-10 saniyede bir) örneklendiğini kontrol edin.
Hız sınırı değişikliği yapılmayan bir yolun kırpılmış yolunda neden çok sayıda yol segmenti döndürülüyor?
interpolate parametresi true olarak ayarlandığında, yola tutturma sorgusu köşeler, eğriler ve döner kavşakların etrafında yolu izleyen bir çoklu çizgi döndürür. Yol eğimleri olduğunda, hız sınırı değişmese bile birden fazla yol segmenti döndürülür. Böylece, yol geometrisine yakından uyan bir çoklu çizgi oluşturulur.