Coğrafi kodlama, adresleri (açık adres gibi) coğrafi koordinatlara (enlem ve boylam) dönüştürme işlemidir. Bu işaretçileri bir haritaya işaretçi yerleştirmek veya haritayı konumlandırmak için kullanabilirsiniz. Bu belgenin amacı, adresleri coğrafi kodlama yaparken dikkat edilmesi gereken noktaları netleştirmektir. Coğrafi kodlama API'sinin hangi durumlarda en iyi şekilde kullanılacağı ve Places API Yer Otomatik Tamamlama hizmetinin ne zaman avantajlı olacağı açıklanmaktadır.
Genel olarak, açık adreslerin coğrafi kodlamasını yaparken Coğrafi Kodlama API'sini kullanın (örneğin, "48 Pirrama Rd, Pyrmont, NSW, Avustralya"). Coğrafi kodlama belirsiz (eksik) adresler için veya kullanıcı girişlerine yanıt verirken gecikme hassasiyeti olan uygulamalar için Places API Place Autocomplete hizmetini kullanın.
Kullanım alanları ve API önerileri
|Kullanım alanları ve API önerileri|
|Kullanıcı girişine gerçek zamanlı olarak yanıt verme (kullanıcının girdiği belirsiz, eksik, yanlış biçimlendirilmiş veya yanlış yazılmış adresleri içerir)||Bir yer kimliği elde etmek için Places API Yer Otomatik Tamamlama hizmetini kullanın, ardından yer kimliğini bir lattl olarak coğrafi olarak kodlamak için Geocoding API'yi kullanın.|
|Otomatik sistemlerin işlenmesi tamamlandığı kesin olmayan posta adresleri (ör. "48 Pirrama Rd, Pyrmont, NSW, Avustralya")||Geocoding API web hizmetini kullanın.|
|Otomatik sistemlerin belirsiz sorguları işlemesi (ör. eksik, yanlış biçimlendirilmiş veya yanlış yazılmış adresler)||Önerilen otomatik sistemler, Geocoding API web hizmetini kullanır. Bununla birlikte, yüksek oranda belirsiz, eksik veya yanlış yazılmış otomatik sistemlere sahip, kullanıcı girişinden türetilen otomatik sistemler, kullanıcının bir sonucu seçmesine ve böylece bir adresin yanlış yazılmasına izin vermemek için etkileşimli bir Place Otomatik Tamamlama widget'ından yararlanabilir.|
|Directions API'yi veya DISTANCE Matrix API'yi kullanan ve kaynak dizeleri olarak belirtilen başlangıç noktaları, hedefler veya ara noktaların bulunduğu gecikme sorunları||Yer kimliklerini elde etmek için Places API Yer Otomatik Tamamlama hizmetini kullanarak coğrafi kodlama gecikmesini azaltın, ardından Yer Kimliklerini Directions API'ye veya DISTANCE Matrix API'ye iletin.|
Kullanıcı girişine yanıt verme
Kullanıcı girişine gerçek zamanlı olarak yanıt veren uygulamaların API seçimini etkileyen iki önemli husus vardır:
- Kullanıcı girişi genellikle bir adresin (ör. "123 Ana Cadde") kademeli olarak girilmesini gerektirir. Bu nedenle, belirsiz, belirsiz adreslerin coğrafi olarak kodlanması, kullanıcının daha hızlı sonuç almasına olanak sağladığından yararlıdır.
- Kullanıcı girişlerine yanıt veren uygulamalar gecikmeye son derece duyarlıdır.
Bu iki önemli nokta, Yerler API'sindeki Otomatik Yer Tamamlama hizmetini kullanıcı girişlerine yanıt verme açısından ideal bir hale getirir. Otomatik Yer Tamamlama, birden çok olası seçeneği döndürecek ve kullanıcıların bunlar arasında seçim yapmasına olanak tanıyacak şekilde tasarlanmıştır. Places API, işletmeleri hariç tutarken yalnızca coğrafi kodlamaları veya adresleri arayacak şekilde kısıtlanabilir. Ayrıca, otomatik tamamlama arama işlevi bir konuma özel sonuçlar döndürebilmek için ağırlık uygulayabilir. Places API bir yer kimliği döndürür. Bu kimlik, tam olarak belirsiz bir konum olarak Geocoding API web hizmetine iletilebilir. Daha sonra bu adres tam adres ayrıntılarını döndürür ve coğrafi kodlama bir latl olarak yapılır. Yer kimlikleri, Directions API ve DISTANCE Matrix API gibi diğer API'lere de iletilebilir (aşağıya bakın).
Geocoding API'deki adres coğrafi kodlama, çok daha uzun bir gecikme süresine sahiptir ve eksik veya belirsiz sorgular için daha az doğru sonuçlar verir. Bu nedenle, kullanıcı girişlerine gerçek zamanlı olarak yanıt vermesi gereken uygulamalar için önerilmez.
Otomatik sistemler
Otomatik sistemlerin, tam ve belirsiz posta adreslerini işlemesi: Eksiksiz posta adresi dizeleri gibi belirsiz sorgular (örneğin, "48 Pirrama Rd, Pyrmont, NSW, Avustralya") Geocoding API web hizmeti tarafından en iyi şekilde gerçekleştirilir. Adres coğrafi kodlama arka ucu, genel olarak adreslerin daha geniş bir kapsamda olmasını sağlar ve bu tür tam, belirsiz sorgularla yüksek kaliteli sonuçlar için optimize edilir.
Otomatik sistem işleme belirsiz sorguları: Belirsiz sorgular, hatalı biçimlendirilmiş adresler, eksik adresler veya yazım hataları içerir. Otomatik sistemler için Geocoding API web hizmetini kullanmanızı öneririz. Bununla birlikte, Geocoding API, belirsiz sorgularla başa çıkmak için tasarlanmamıştır ve belirsiz sorgulara yanıt olarak daha az doğru veya sıfır sonuç üretebilir. Otomatik sisteminiz, kullanıcı girişinden elde edilen yüksek sayıda belirsiz sorguyu işliyorsa, Rehber API'sindeki Otomatik Yer Tamamlama hizmetini kullanarak uygulamanıza etkileşimli bir öğe ekleyebilirsiniz. Bunun nedeni, bu sistemin birden çok olası seçenek döndürmek ve kullanıcıların bunlar arasında seçim yapmasını sağlamak için tasarlanmasıdır. Places API bir yer kimliği döndürür. Bu kimlik, tam olarak belirsiz bir konum olarak Geocoding API web hizmetine iletilebilir. Daha sonra bu adres tam adres ayrıntılarını döndürür ve adresin kodunu bir enlem-boylama dönüştürür. Android, iOS, JavaScript ve Places API için Place Otomatik Tamamlama hizmeti hakkında daha fazla bilgi edinin.
Directions API ve DISTANCE Matrix API için gecikmeyi azaltma
Kaynaklar, hedefler veya ara noktalar adres dizeleri olarak belirtildiğinde, Directions API ve Mesafe Matrisi API'si, yol tariflerini hesaplamadan önce bu adreslerin coğrafi kodlamasını yapmak için Geocoding API ile aynı arka ucu kullanır. Bu, latnng'ler veya yer kimlikleri ile aynı konumları belirtmeye kıyasla gecikmeyi önemli ölçüde artırır.
Uygulamanız, kullanıcı girişine yanıt verme gibi gecikmeye duyarlı bir durumda Directions API'yi veya DISTANCE Matrix API'yi kullanıyorsa ve başlangıç noktalarınız, hedefleriniz veya referans noktalarınız başlangıçta adres dizeleri olarak belirtilirse, adres dizelerini yer kimliklerine dönüştürmek için Places API'nin Place Autocomplete hizmetini kullanarak gecikmeyi en aza indirmenizi ve ardından yer kimliklerini Directions API'ye veya DISTANCE Matrix API'ye iletmenizi öneririz. Android, iOS, JavaScript ve Places API için Place Otomatik Tamamlama hizmeti hakkında daha fazla bilgi edinin. Ayrıca, yer otomatik tamamlama ve yol tarifleri için JavaScript örneği konusuna bakın.
Sonuç
Kullanım alanınıza bağlı olarak, coğrafi kodlama yaparken, Geocoding API'yi veya Place Otomatik Tamamlama hizmetini Geocoding API ile birlikte kullanarak kullanıcılara doğru coğrafi kodlama sonuçları sunan ve gecikmeyi azaltan uygulamalar oluşturabilirsiniz.
Hataları ve yeniden denemeleri yönetme
UNKNOWN_ERROR yanıtları alırsanız bunlar geçici hatalardan kaynaklanır. Kısa bir gecikmenin ardından tekrar deneyerek bu sorunu çözebilirsiniz. Yeniden deneme mantığı içeren ve Google Haritalar Platformu Premium Planı kimlik doğrulamasını destekleyen Google Haritalar Platformu web hizmetleri istemci kitaplıklarından yararlanmanızı öneririz.
Google Haritalar Hizmetleri için Java Client, Python Client, Go Client ve Node.js Client, GitHub'da indirilebilen ve katkıda bulunulabilen, topluluk tarafından desteklenen istemci kitaplıklarıdır. Burada, yükleme talimatlarını ve örnek kodu da bulabilirsiniz.