Skip to content

Permission requests are product flows

Abdul-Qudus Rufai 1 min read

A permission request is not just an API call. It is a product flow.

When an application needs the camera, microphone, notifications or location, several outcomes are possible:

  • The permission has already been granted
  • The user grants it now
  • The user denies it
  • The permission is permanently blocked
  • The device does not support the capability
  • The capability is temporarily unavailable

I dealt with this in a project that depended on multiple device capabilities during one workflow.

Rather than requesting everything immediately, I requested each permission when its purpose became clear. When permission was denied, the app explained why it was needed and provided a route to system settings where appropriate. I also made sure the rest of the screen remained understandable when a capability was unavailable.

Good permission UX answers three questions:

  • Why do you need this?
  • What happens if I decline?
  • How can I change my decision later?

Originally shared on LinkedIn.