![Online Certification Courses](https://siit.co/online-course-and-certificate.png)
How Do Android App Permissions Work? What You Need to Know
What Are Android Permissions?
Android permissions are special privileges that apps must ask for your approval to use when they want to access sensitive information on your phone.
Our phones contain so much personal data that it makes sense to limit this access. You probably don't want to let every app on your phone use your camera, microphone, and location.
Since Android changed the way that permissions work starting with Android 6 Marshmallow, we'll focus on the modern method and briefly look at the way this used to work afterward. Here we illustrate with instructions for stock Android 10; these menu options may differ slightly based on your phone.
How To View And Manage Permissions In Android
You can check the permissions that you've granted to installed apps at any time.
Head to Settings > Privacy > Permission manager to view a breakdown of the major permissions like Camera, Phone, SMS, and more. Most of these are pretty self-explanatory for instance, the SMS permission lets apps read and send text messages but you'll see descriptions at the top of each page if you're not sure.
Tap a permission and under Allowed, you'll see every app that you've approved to use that function. Below this, the Denied section shows apps that don't have access but have asked for it.
Tap an app to change change its permission status to Allow or Deny. To see more, select See all [app] permissions to jump to the app's full permissions page. You can also get to this by going through Settings > Apps & notifications > See all X apps, tapping the app in question, and choosing Permissions.
Reviewing Specific Permissions
While Android groups permissions into broad categories like Location and Storage, there are actually many granular permissions under each category. You can find these on an app's permissions page; tap the three-dot Menu button at the top-right and choose All permissions to see a full breakdown.
For example, under the Storage section, you'll likely see both read the contents of your shared storage and modify or delete the contents of your shared storage. This provides the app with both read and write permissions to your file system. Tap any permission to see more info about it.
At the bottom, you'll see a collection of Other app capabilities. Android considers these "normal permissions"; they don't require your approval since they are common across apps and don't pose a risk to your privacy. These include control vibration, receive data from internet, and others.
Be aware that when you approve a permission group, all the granular permissions inside are automatically granted. You can't pick and choose individual permissions from a group.
Granting Permissions To New Apps
We've looked at how to adjust permissions for apps already on your device, but what about when you install new apps?
Before even installing, you can check the permissions that an app might request on its Google Play Store page. Tap the About this app section to open its description, then scroll down to the bottom and hit the See More link next to App permissions. Here you'll see a list of permissions groups and specific permissions that the app may request.
You can review this on the web version of the Play Store, too. Scroll to the bottom and in the Additional Information section, click View details under Permissions.
With apps built for modern versions of Android, you don't have to grant any permissions upon installing an app. Instead, an app will ask you for permissions as it needs them, and a well-made app will do this in a way that makes sense. For example, it might walk you through an introduction with the reasons it needs certain permissions before prompting you for them.
Other times, you won't see a request for a permission until you try to use that function. For instance, when you try to send a picture in a messaging app, you'll see a prompt for it to access your storage.
Denying Permissions
If you deny a permission, what happens next depends on the app. Sometimes, it will work just fine without a certain function. For example, you can still browse Instagram without giving the app access to your camera you just can't snap new pictures.
Other times, an app may refuse to function properly unless you grant that permission. It might rely on it to work, or maybe the developer didn't account for people denying the permission.
This is also the case if you change your mind and decide to deny a permission that you had approved earlier. The app will hopefully detect that you denied the permission and ask you to allow it again when needed, but that's up to the developer. Should you find that some feature in an app doesn't work, it's a good idea to review the permissions list.
And if an app keeps asking for a permission that you don't want to provide, after you tap Deny once, you'll see a Don't ask again option.
The Old Android Permission System
On Android 5 Lollipop and earlier, the classic system of Android permissions applies. Since only a small percentage of devices still run these versions, we'll briefly touch on how it worked.
Prior to Android 6 Marshmallow, you had to accept all requested permissions when you installed an app, which was an all-or-nothing system. Thus, if you didn't like one permission that an app asked for, your only options were to live with it or not download the app. And if an app added new categories of permissions later, you had to also accept those to update the app to the latest version.
Obviously, this setup has a lot of problems. Unless you rooted your phone to use a permission manager app, you were at the mercy of whatever permissions an app added. It didn't give the user enough control, which is why Google changed it.
Unless you have an old Android phone, you don't have to worry about this system. However, there is one quirk that carries over from older permissions. If a developer hasn't updated their app to target Android 6 or newer, you'll see a prompt to accept all permissions when installing an app, instead of approving them individually.
You can still use the permission manager to revoke permissions as described above, but since the apps aren't built with this functionality in mind, doing so may break them.
Related Courses And Certification
Android Programming Course and Certification