我通過使用Geolocator
插件獲取xamarin.forms中的GPS位置來捕獲緯度&經度Listview_ItemTapped
。 但平均超過15秒捕獲位置。有沒有什麼方法可以立即獲得位置信息。如何在Xamarin.forms中即時獲取GPS位置?
if (CrossGeolocator.Current.IsGeolocationEnabled == false)
{
await DisplayAlert("Notification", "Geolocation is Unavailable ", "Ok");
}
else
{
Application.Current.Properties["LATITUDE"] = null;
Application.Current.Properties["LONGITUDE"] = null;
var locator = CrossGeolocator.Current;
//locator.DesiredAccuracy = 50;
var position = await locator.GetPositionAsync(timeoutMilliseconds: 50000);
Application.Current.Properties["LATITUDE"] = position.Latitude;
Application.Current.Properties["LONGITUDE"] = position.Longitude;
await Navigation.PushAsync(new RetailerDetailsPage(), false);
}
我試圖通過消除locator.DesiredAccuracy = 50;
但有時又它的工作原理立即&有時它不是。
謝謝@SushilHangover但在我的情況下,我需要快速和準確的位置,用戶可能會在戶外環境。我只需要精確的經度和緯度,它確認了用戶訪問該位置。我不打算在地圖上顯示用戶的位置。也大多用戶將是遠程位置,不保證良好的無線或互聯網連接。那麼實現這個最好又簡單的方法是哪個? –
@GaneshParikh在你的情況下,你需要依靠一個完整的GPS位置,這隻會發生與設備/模型對請求的響應一樣快。所以你要麼像你一樣繼續這樣做,要麼在用戶點擊ListView之前開始在後臺**中檢查用戶的GPS位置,並且在他們確實已經有緩存的長/可用的時候停止背景GPS更新 – SushiHangover