title: Prompt user with a popup for turning on GPS
body: <p>So I notice Google Map was able to prompt the user to enable the GPS. I tried this method below and I got the prompt once and then nothing... Why aren't the onActivityResult() method isn't called anymore?</p>
  
  <pre><code>public void checkLocationEnable() {
      Log.e(TAG, "Here");
      LocationRequest mLocationRequest = new LocationRequest();
      mLocationRequest.setInterval(10000);
      mLocationRequest.setFastestInterval(5000);
      mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
      LocationSettingsRequest.Builder builder = new LocationSettingsRequest.Builder()
              .addLocationRequest(mLocationRequest);
  
      final PendingResult&lt;LocationSettingsResult&gt; result =
              LocationServices.SettingsApi.checkLocationSettings(mGoogleApiClient,
                      builder.build());
  
      result.setResultCallback(new ResultCallback&lt;LocationSettingsResult&gt;() {
          @Override
          public void onResult(@NonNull LocationSettingsResult locationSettingsResult) {
              final Status status = locationSettingsResult.getStatus();
              final LocationSettingsStates state = locationSettingsResult.getLocationSettingsStates();
              Log.e(TAG, "state:" + state);
              switch (status.getStatusCode()) {
                  case LocationSettingsStatusCodes.SUCCESS:
                      Log.e(TAG, "HERE-1");
                      // All location settings are satisfied. The client can
                      // initialize location requests here.
                      break;
                  case LocationSettingsStatusCodes.RESOLUTION_REQUIRED:
                      Log.e(TAG, "REQUIRED");
                      // Location settings are not satisfied, but this can be fixed
                      // by showing the user a dialog.
                      try {
                          // Show the dialog by calling startResolutionForResult(),
                          // and check the result in onActivityResult().
                          status.startResolutionForResult(
                                  getActivity(),
                                  GenericActivity.REQUEST_LOCATION);
                      } catch (IntentSender.SendIntentException e) {
                          // Ignore the error.
                      }
                      break;
                  case LocationSettingsStatusCodes.SETTINGS_CHANGE_UNAVAILABLE:
                      // Location settings are not satisfied. However, we have no way
                      // to fix the settings so we won't show the dialog.
                      Log.e(TAG, "UNAVALAIBLE");
  
                      break;
              }
          }
      });
  }
  </code></pre>