public Location getLocation() { try { locationManager = (LocationManager) context.getSystemService(LOCATION_SERVICE); isGPSEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER); isNetworkEnabled = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER); if (!isGPSEnabled && !isNetworkEnabled) { } else { this.canGetLocation = true; if (isNetworkEnabled) { locationManager.requestLocationUpdates( LocationManager.NETWORK_PROVIDER, MIN_TIME_BW_UPDATES, MIN_DISTANCE_CHANGE_FOR_UPDATES, this); if (locationManager != null) { location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER); if (location != null) { DogHolder.getInstance().setLocation(location); } } } if (isGPSEnabled) { if (location == null) { locationManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, MIN_TIME_BW_UPDATES, MIN_DISTANCE_CHANGE_FOR_UPDATES, this); if (locationManager != null) { location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); if (location != null) { DogHolder.getInstance().setLocation(location); } } } } } } catch (Exception e) { e.printStackTrace(); } return location; }
@Override public void onLocationChanged(Location arg0) { UpdateLocation task = (UpdateLocation) new UpdateLocation() .execute( "http://46.101.229.180:8000" + "/setCoordinates/" + DogHolder.getInstance().getUser() + "/" + Double.toString(arg0.getLatitude()) + "/" + Double.toString(arg0.getLongitude())); }