Я использую API Google Play Services для определения местоположения. Я получил местоположение в LocationCallback
, и я могу обновить интерфейс также из метода обратного вызова. Но когда я хочу сохранить значение lat, lng в другой переменной, оно становится равным 0. Вот мой код, чего мне здесь не хватает?
FusedLocationProviderClient client = LocationServices.getFusedLocationProviderClient(this);
LocationRequest request = new LocationRequest();
request.setInterval(5000);
request.setFastestInterval(2500);
request.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
LocationCallback callback = new LocationCallback() {
@Override
public void onLocationResult(LocationResult locationResult) {
super.onLocationResult(locationResult);
for (Location location : locationResult.getLocations()) {
double lat = location.getLatitude();
double lng = location.getLongitude();
lattitude = lat;
longitude = lng;
((TextView) findViewById(R.id.tvLat)).setText(String.valueOf(lat));
((TextView) findViewById(R.id.tvLng)).setText(String.valueOf(lng));
}
}
};
client.requestLocationUpdates(request, callback, null);