Geocoding
- React Native kursu
- İleri seviye
- Ders 23/83
- 5 dk
Geocoding ve reverse geocoding öğrenirsin.
Geocoding
Geocoding, bir adresi coğrafi koordinatlara çevirir. expo-location paketi Location.geocodeAsync işlevini sunar. Bu işlev bir adres dizesi alır ve bir dizi konum nesnesi döndürür; her nesnenin latitude ve longitude alanları vardır.
Ters işlem reverse geocoding'dir: koordinatı adrese çevirir. Location.reverseGeocodeAsync({ latitude, longitude }) bir dizi adres nesnesi döndürür; city, street, country gibi alanlar taşır. Bu iki işlev birlikte harita uygulamalarında arama ve etiketleme yapar. Her ikisi de asenkron olduğundan await ile beklenir.
reverse geocoding
Ters işlem Location.reverseGeocodeAsync ile yapılır. İşlev bir nesne alır: { latitude, longitude }. Bir dizi adres nesnesi döndürür; ilk eleman genellikle en uygun adrestir. Her adres nesnesi city, street, region, country gibi alanlar taşır.
Örnek: const addresses = await Location.reverseGeocodeAsync({ latitude: 41.0082, longitude: 28.9784 }). addresses[0].city şehir adını verir. Bu kalıp, kullanıcının konumunu okunabilir bir adrese çevirir. Örneğin 'İstanbul' veya 'Kadıköy' gibi etiketler oluşturulur. Hata toleransı için dizi boş olabilir; bu yüzden ilk elemanı almadan önce uzunluk kontrolü yapılır.
Uygulama Adresten koordinat al
geocodeAddress işlevini tamamla. const results = await Location.geocodeAsync(address) çağır. return results[0] ile ilk sonuçu döndür.
Başlangıç kodu
import * as Location from 'expo-location';
export async function geocodeAddress(address) {
// adresi koordinata çevir ve ilk sonuçu döndür
}Örnek çözüm
const results = await Location.geocodeAsync(address);
return results[0];Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Geocoding işlevini yaz
const results = await Location.____('İstanbul');
const results = await Location.geocodeAsync('İstanbul');
Açıklama: geocodeAsync adresi koordinata çevirir.
2 Hangi işlev koordinatı adrese çevirir?
const addresses = await Location.??({ latitude, longitude })- geocodeAsync
- decodeAsync
- addressAsync
- reverseGeocodeAsync Doğru cevap
Açıklama: reverseGeocodeAsync koordinatı adrese çevirir.
3 İşlevi amacına eşle
| Kavram | Anlamı |
|---|---|
geocodeAsync |
Adresten koordinata |
reverseGeocodeAsync |
Koordinattan adrese |
getCurrentPositionAsync |
Anlık konum |
watchPositionAsync |
Sürekli izleme |