React Native: Managing App Permissions for iOS

A comprehensive guide to managing permissions in React Native

Ross Bulat
12 min readMar 26, 2020

This article covers permission management in React Native, an important consideration to ensure a seamless experience for the end user. What React Native apps need to do is listen to permission changes as they are made outside the app, and update the UX accordingly when the app is summoned back into the foreground. This is due to the fact that permissions are changed from within the Settings app, and not in the app itself.

What apps can do is request a permission via a one-time dialogue prompt, that the user can either accept or decline. It is after this initial decision that the user must jump into Settings to adjust these permissions. Therefore, what React Native must be able to do is:

  • Request permissions on a per-permission basis. We’ll cover how to enable these permissions within Xcode, and use packages like react-native-permissions to read current permission status and request permissions to be granted.
  • Check permissions when a user jumps back into the app on key screens that require those permissions to be granted, such as the camera permission for taking photos and videos in-app, or real-time location permission for apps like ride hailing apps. These checks can be done with event…

--

--

Ross Bulat

Programmer and Author. @ Parity Technologies, JKRB Investments