Cannot Access Network based location when location access is off
<p>I am using google location api for fetching location. issue I'm facing is when the user turned the GPS off I'm not getting the Lcoation, as per <a href="https://android.stackexchange.com/questions/40383/can-apps-know-where-you-are-even-without-gps">this</a> post says we can access Network based location even-though the GPS is turned off. but I'm not getting locaton when the user turned off the location access.</p>

<p>this is my service to fetch location</p>

<pre><code>public class LocationUpdateService extends Service implements GoogleApiClient.ConnectionCallbacks,
        GoogleApiClient.OnConnectionFailedListener, LocationListener, ResultCallback&lt;Status&gt; {


@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 
   }     
}
</code></pre>

<p>So my question is, Is it really possible to access location when the location access is disabled (<em>not last cached location</em>), if yes, what is wrong with my code</p>