title: ActivityCompat.requestPermissions does not show prompt
body: <p>I'm attempting to request <code>ACCESS_FINE_LOCATION</code> permissions in order to get the user's current location.</p>
  
  <p>My logging indicates that my app does not currently have this permission when querying <code>ContextCompat.checkSelfPermission()</code>, but when calling <code>ActivityCompat.requestPermissions()</code> nothing is displayed.</p>
  
  <p>My Google map code (implementing <code>OnMapReadyCallback</code> and <code>ActivityCompat.OnRequestPermissionsResultCallback()</code>) is in a <code>FragmentActivity</code>.</p>
  
  <p>I have managed to get the <code>requestPermissions()</code> function working successfully in other Activities in the app, it's just the one with the Google map. It doesn't work when placed in the <code>onCreate()</code> method of the <code>Activity</code>, or in <code>onMapReady()</code> (where it needs to go).</p>
  
  <pre><code>if(ContextCompat.checkSelfPermission(LocationActivity.this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
          Log.d(TAG, "not granted");
          final String[] permissions = new String[] {android.Manifest.permission.ACCESS_FINE_LOCATION};
      if(ActivityCompat.shouldShowRequestPermissionRationale(this, android.Manifest.permission.ACCESS_FINE_LOCATION)) {
              Log.d(TAG, "rationale");
              // Explain to the user why permission is required, then request again
              AlertDialog.Builder builder = new AlertDialog.Builder(this);
              builder.setMessage("We need permissions")
                      .setCancelable(false)
                      .setPositiveButton("OK", new DialogInterface.OnClickListener() {
                          public void onClick(DialogInterface dialog, int id) {
                              ActivityCompat.requestPermissions(LocationActivity.this, permissions, 1);
                      }
                  });
          AlertDialog alert = builder.create();
          alert.show();
  
      } else {
          Log.d(TAG, "request" + android.Manifest.permission.ACCESS_FINE_LOCATION);
          // If permission has not been denied before, request the permission
          ActivityCompat.requestPermissions(LocationActivity.this, permissions, 1);
      }
  } else {
      Log.d(TAG, "granted");
  }
  </code></pre>
  
  <p>Any ideas? Is it something to do with my Activity's class (<code>FragmentActivity</code>), or possible the Google map calling the permissions request asynchronously?</p>