我有这个方法来获取用户位置,我想返回myLocation
变量:
mFusedLocationClient.getLastLocation().addOnSuccessListener(new OnSuccessListener<Location>() {
@Override
public void onSuccess(Location location) {
// Got last known location. In some rare situations this can be null.
if (location != null) {
double latitude = location.getLatitude();
double longitude = location.getLongitude();
LatLng mylocation = new LatLng(latitude, longitude);
}
}
});
我在一个返回LatLng值的函数中有这个方法,但我无法从方法内部获取值。
答案 0 :(得分:-1)
声明Fused Location Client类
private Location currentLocation;
public Location getCurrentLocation() {
return currentLocation;
}
mFusedLocationClient.getLastLocation().addOnSuccessListener(new OnSuccessListener<Location>() {
@Override
public void onSuccess(Location location) {
// Got last known location. In some rare situations this can be null.
if (location != null) {
this.currentLocation= location;
}
}
});
在getCurrentLocation()之后处理当前位置LatLng
if (getCurrentLocation() != null) {
double latitude = getCurrentLocation() .getLatitude();
double longitude = getCurrentLocation() .getLongitude();
LatLng mylocation = new LatLng(latitude, longitude);
}