Permisos de Android M: Confundido sobre el uso de la función shouldShowRequestPermissionRationale ()

Estaba revisando el documento oficial sobre el nuevo modelo de permisos en Android M. Habla sobre elshouldShowRequestPermissionRationale() función que devuelvetrue si la aplicación ha solicitado este permiso anteriormente y el usuario rechazó la solicitud. Si el usuario rechazó la solicitud de permiso en el pasado y eligió la opción No volver a preguntar, este método devuelvefalse.

Pero, ¿cómo podemos diferenciar entre los siguientes dos casos?

Caso 1: La aplicación no tiene permiso y no se le ha pedido permiso al usuario antes. En este caso, shouldShowRequestPermissionRationale () devolverá false porque es la primera vez que le preguntamos al usuario.

Caso 2: El usuario ha denegado el permiso y ha seleccionado "No volver a preguntar", en este caso también shouldShowRequestPermissionRationale () devolverá false.

Me gustaría enviar al usuario a la página de configuración de la aplicación en el Caso 2. ¿Cómo hago para diferenciar estos dos casos?