July 4, 2014 by Evgenia (Jenny) Grinblo
Giving Context for iOS Permissions
Have you ever launched a newly-downloaded app and automatically tapped “Don’t Allow” on a cluster of notifications just so you can get to the meat of it?
Apparently you’re not alone.
The problem: users automatically deny app permissions. Some of the most useful native mobile capabilities depend on user permissions. Apple requires us to ask for explicit permission to use a user’s contacts, location, camera, and to send them push notifications. The most common way of doing this is to pop up an alert asking for permission to use native capabilities but users commonly ignore them.
There is a low ceiling to improving standard alerts. Apple give us space to improve the copy inside the alert, making it more friendly and informative. Unfortunately, this doesn’t solve the main problem: users get trigger-happy and deny permissions without thinking much about it.
The key solution is: get users to give you access the first time. Reversing a decision to deny permission requires the user to exit your app and change settings elsewhere. Most won’t do this, forever blocking native capabilities and features that depend on them.
- Explaining the benefits in the app UI before asking for permissions
- Using an additional iOS dialogue for a pre-permission
- Custom UI for ducational pre-permission overlays
- The most successful (up to 100%!): user-triggered dialogues
Jump, the new iOS app for London busses* is a great example of the first method. During the initial tour, the app mentions the benefit of finding bus stops nearby, and shows the location services dialogue after a few seconds.
The key is giving users context. Asking for permissions without warning can seem like a spammy interruption.
The most exciting tactic used by Brenden in Cluster is the user-triggered dialogues. In this example, Cluster ask for access to the Contacts app just when the user tries to add people in the app – in other words, just when contacts access would make their life that much easier.
The genius is in waiting for a user action to trigger the dialogue in context. This way, asking for permissions is a tool to complete an action the user has already initiated. Why haven’t we been doing this all along?
For more details on all the ways you can make permissions better in your app read the full post by @Mulligan on Medium
iOS Human Interface Guidelines for accessing user data
Efficient App Communication by Luis Abreau