在我的android應用程序中,我使用下面的代碼來獲取用戶的當前位置。android - 停止接收位置更新
private void getDeviceLocation() {
Boolean mLocationPermissionGranted = //ask for permission and stuff
if (mLocationPermissionGranted) { //if permission granted
mCurrentLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient);
LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, this);
}
}
我只想要1次位置更新,所以我removeLocationUpdates
我onLocationChanged
方法內。
@Override
public void onLocationChanged(Location location) {
mCurrentLocation = location;
LocationServices.FusedLocationApi.removeLocationUpdates(mGoogleApiClient, this);
}
做的是停止調用onLocationChanged
方法,但我看到,我的位置還是在不斷變化過幾秒在地圖上。精度半徑不斷增加或減小。我不想那樣。我希望「藍點」穩定而不移動。
你可能有使用了'mGoogleMap.setMyLocationEnabled(true);'。該功能讓Google地圖無需您提供更多代碼即可訪問用戶的位置信息。它可以是有用的,因爲它不能。 – Gorcyn
@Gorcyn ya,我已經使用了'setMyLocationEnabled(true)',但將其設置爲false只會刪除「藍點」。問題仍然存在 –