Я использую google location api для получения местоположения. проблема, с которой я столкнулся, - это когда пользователь отключил GPS, я не получаю Lcoation, поскольку сообщение this говорит, что мы можем получить доступ к сетевому местоположению даже, хотя GPS отключен. но я не получаю locaton, когда пользователь отключил доступ к местоположению.Не удается получить доступ к местоположению, основанному на сети, когда доступ к местоположению отключен
это моя служба, чтобы принести место в
public class LocationUpdateService extends Service implements GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener, LocationListener, ResultCallback<Status> {
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
startLocationUpdates();
return START_STICKY;
}
@Override
public void onCreate() {
super.onCreate();
LogUtils.LOGI(TAG, "Service created");
buildGoogleApiClient();
setupBroadCastListenerForGpsStatusChange();
initLastLocationDetails();
}
/**
* Requests location updates from the FusedLocationApi.
*/
protected void startLocationUpdates() {
if (!mGoogleApiClient.isConnected()) {
mGoogleApiClient.connect();
} else {
mRequestingLocationUpdates = true;
LocationServices.FusedLocationApi.requestLocationUpdates(
mGoogleApiClient, mLocationRequest, this);
}
}
/**
* Builds a GoogleApiClient. Uses the {@code #addApi} method to request the
* LocationServices API.
*/
protected synchronized void buildGoogleApiClient() {
LogUtils.LOGI(TAG, "Building GoogleApiClient");
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.addApi(LocationServices.API)
.addApi(ActivityRecognition.API)
.build();
createLocationRequest();
}
protected void createLocationRequest() {
mLocationRequest = new LocationRequest();
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
mLocationRequest.setInterval(UPDATE_INTERVAL_IN_MILLISECONDS);
mLocationRequest.setFastestInterval(FASTEST_UPDATE_INTERVAL_IN_MILLISECONDS);
mLocationRequest.setSmallestDisplacement(SMALLEST_DISTANCE_METERS);
}
@Override
public void onConnected(Bundle connectionHint) {
startLocationUpdates();
}
@Override
public void onLocationChanged(Location location) {
//location operations
}
}
Так что мой вопрос в том, что на самом деле можно получить доступ места, когда доступ к местоположению отключено (не последний кэшируется расположение), если да, то случилось с моим кодом
Пожалуйста, внимательно прочитайте вопрос перед ответом, см. Я использую google play location api, и вы отправляете ответ для родного местоположения android api – droidev