private async Task RetreiveLocation() { locator = CrossGeolocator.Current; locator.DesiredAccuracy = 50; if (locator.IsGeolocationAvailable && locator.IsGeolocationEnabled) { var position = await locator.GetPositionAsync(TimeSpan.FromSeconds(100)); if (position == null) { return; } Debug.WriteLine("Position Status: {0}", position.Timestamp); Debug.WriteLine("Position Latitude: {0}", position.Latitude.ToString()); Debug.WriteLine("Position Longitude: {0}", position.Longitude.ToString()); locator.PositionChanged += (sender, e) => { position = e.Position; Debug.WriteLine("Position Latitude: {0}", position.Latitude.ToString()); Debug.WriteLine("Position Longitude: {0}", position.Longitude.ToString()); }; } else { await DisplayAlert("Error", "Home", "OK"); } }
private async void TestB_Clicked(object sender, EventArgs e) { PermissionStatus status = await CrossPermissions.Current.CheckPermissionStatusAsync(Permission.Location); if (status != PermissionStatus.Granted) { var results = await CrossPermissions.Current.RequestPermissionsAsync(new[] { Permission.Location }); status = results[Permission.Location]; if (status != PermissionStatus.Granted) { string msg = "No tenemos acceso a tu posicion"; await DisplayAlert("Alerta", msg, "ok"); return; } } Plugin.Geolocator.Abstractions.IGeolocator locator = CrossGeolocator.Current; locator.DesiredAccuracy = 20; var position = await locator.GetPositionAsync(); Time.Text = "Time: " + position.Timestamp.LocalDateTime.ToString(); Lat.Text = "Latitude: " + position.Latitude.ToString(); Long.Text = "Longitude: " + position.Longitude.ToString(); }
private async Task ExecuteGetGPSCoordinatesCommand() { if (IsBusy) { return; } IsBusy = true; try { var localCoordinates = await _geolocator.GetPositionAsync(timeoutMilliseconds : 10000); //weatherRoot = await WeatherService.GetWeather(local.Latitude, local.Longitude Latitude = localCoordinates.Latitude; Longitude = localCoordinates.Longitude; } catch (Exception ex) { //(CDLTLL) Xamarin.Insights.Report(ex); // --> Add here HockeyApp telemetry for crash/exception, etc. throw; } finally { IsBusy = false; } }
async protected override void OnAppearing() { var gps = await locator.GetPositionAsync(); map.MoveToRegion(new MapSpan(new Position(gps.Latitude, gps.Longitude), 0.001, 0.001), false); map.IsEnabled = true; base.OnAppearing(); }
//this needs to be asynchronous because awaititng in the main thread causes a deadlock //sets the camera on user position if available async Task InitAsync() { locator = CrossGeolocator.Current; try { var pos = await locator.GetPositionAsync(); await map.MoveCamera(CameraUpdateFactory.NewPosition(new Xamarin.Forms.GoogleMaps.Position(pos.Latitude, pos.Longitude))); } catch { } }
async public Task <Nullable <Position> > GetCurrentPosition(Plugin.Geolocator.Abstractions.IGeolocator locator) { try { var geoPosition = await locator.GetPositionAsync(10000); Position currentSampledPosition = new Position(geoPosition.Latitude, geoPosition.Longitude); this.UpdateCurrentPosition(currentSampledPosition, Utils.Utils.KPHtoMPS(speedThresholdKMH)); return(this.currentPosition); } catch { return(null); } }
public async Task GetLocationAsync() { try { Plugin.Geolocator.Abstractions.IGeolocator locator = CrossGeolocator.Current; locator.DesiredAccuracy = 50; Plugin.Geolocator.Abstractions.Position location = await locator.GetPositionAsync(); Latitude = location.Latitude; Longitude = location.Longitude; } catch (Exception ex) { ex.ToString(); } }
protected async override void OnAppearing() { base.OnAppearing(); locator = CrossGeolocator.Current; locator.PositionChanged += Locator_PositionChanged; await locator.StartListeningAsync(TimeSpan.FromSeconds(0), 100); var position = await locator.GetPositionAsync(); var center = new Xamarin.Forms.Maps.Position(position.Latitude, position.Longitude); var span = new Xamarin.Forms.Maps.MapSpan(center, 1, 1); locationsMap.MoveToRegion(span); using (SQLiteConnection conn = new SQLiteConnection(App.DatabaseLocation)) { conn.CreateTable <Post>(); var posts = conn.Table <Post>().ToList(); DisplayInMap(posts); } }
private async void UpCoord() { while (true) { Trace.WriteLine("DUMADAAN FREN"); CurrentPos = await Geolocator.GetPositionAsync(TimeSpan.FromSeconds(1)); client = new WebClient(); string response = ""; try { if (!client.IsBusy) { response = client.DownloadString(new Uri("https://meetup-app.000webhostapp.com/uploadCoord.php?id=" + uc.currentUser.ID + "&lat=" + CurrentPos.Latitude + "&lon=" + CurrentPos.Longitude)); } } catch (Exception e) { Trace.WriteLine(e.Message); } Thread.Sleep(5000); } }
public async void InitialMapView() { CurrentPos = await Geolocator.GetPositionAsync(TimeSpan.FromSeconds(1)); gpsMap.MoveToRegion(MapSpan.FromCenterAndRadius(new Position(CurrentPos.Latitude, CurrentPos.Longitude), Distance.FromMiles(1))); }