getCurrentPositionAsync
- React Native kursu
- İleri seviye
- Ders 21/83
- 5 dk
getCurrentPositionAsync ile mevcut konumu öğrenirsin.
getCurrentPositionAsync
Anlık konumu bir kez almak için Location.getCurrentPositionAsync çağrılır. İşlev bir nesne döndürür; coords alanı konum bilgisini taşır. coords.latitude enlem, coords.longitude boylam değeridir.
İşlev bir seçenek nesnesi alır; örneğin { accuracy: Location.Accuracy.High } yüksek doğruluk ister. Doğruluk yüksek olduğunda konum daha kesin ama daha yavaş gelir. Örnek: const loc = await Location.getCurrentPositionAsync({ accuracy: Location.Accuracy.High }). Sonuç loc.coords.latitude ve loc.coords.longitude ile okunur.
coords alanı
Konum nesnesinin coords alanı en önemli kısımdır. coords.latitude enlem değeri (örneğin 41.0082), coords.longitude boylam değeri (örneğin 28.9784) taşır. Bu iki değer birlikte bir noktayı belirler; harita üzerinde gösterilebilir.
coords ayrıca altitude (yükseklik), accuracy (doğruluk yarıçapı), speed (hız) gibi ek bilgiler de taşır. En sık kullanılanlar latitude ve longitude'dur. Bu değerleri state'e yazıp haritada bir imleç olarak gösterirsin. Değerler ondalıklı sayı olduğundan sayı biçiminde işlenir.
Uygulama Anlık konum al
getLocation işlevini tamamla. const loc = await Location.getCurrentPositionAsync({ accuracy: Location.Accuracy.High }) çağır. return { latitude: loc.coords.latitude, longitude: loc.coords.longitude } ile bir nesne döndür.
Başlangıç kodu
import * as Location from 'expo-location';
export async function getLocation() {
// anlık konum al ve lat/lng döndür
}Örnek çözüm
const loc = await Location.getCurrentPositionAsync({
accuracy: Location.Accuracy.High,
});
return { latitude: loc.coords.latitude, longitude: loc.coords.longitude };Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Konum değişkenini yaz
const ____ = await Location.getCurrentPositionAsync({ accuracy: Location.Accuracy.High });
const loc = await Location.getCurrentPositionAsync({ accuracy: Location.Accuracy.High });
Açıklama: loc değişkeni konum nesnesini taşır.
2 coords.latitude neyi taşır?
const lat = loc.???- lat
- coords.latitude Doğru cevap
- lng
- latitude
Açıklama: coords.latitude enlem değerini taşır.
3 Alanı anlamına eşle
| Kavram | Anlamı |
|---|---|
coords |
Konum nesnesi |
latitude |
Enlem |
longutude |
Boylam |
accuracy |
Doğruluk |