title: Android 6.0 needs restart after granting user permission at runtime
body: <p>I follow this guide to ask for permissions for Android 6.0, <a href="https://developer.android.com/preview/features/runtime-permissions.html#support-lib" rel="noreferrer">https://developer.android.com/preview/features/runtime-permissions.html#support-lib</a></p>
  
  <p>However, I have to destroy my application and re-launch to actually have the <code>WRITE_EXTERNAL_STORAGE</code> permission, otherwise it keeps failing for file creation.</p>
  
  <p>Am I missing something?</p>
  
  <pre><code>if(ActivityCompat.checkSelfPermission(mContext, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_DENIED){
      ActivityCompat.requestPermissions((MainActivity)mContext,new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},MY_PERMISSION_REQUEST_WRITE_EXTERNAL_STORAGE);
  } else {
      Intent i = new Intent(v.getContext(), ServiceDownload.class);
      v.getContext().startService(i);
  }
  </code></pre>
  
  <p>File is created in the service and this is emulator not a real device.</p>