Android's permissions system is simple, transparent, and straightforward. When installing an app, you get a chance to review all of the permissions that the app has requested. These can range from accessing your location data to holding a "wakelock" in order to prevent your phone from entering sleep mode. But your only choice in this matter is to accept all requested permissions, or not install the app.
So, with the release of Android 4.2, Google started toying with the concept of granular permissions management for apps. The functionality was called App Ops, and it allowed users to revoke individual permissions on a per-app basis. But Google decided App Ops wasn't quite ready for prime time and hid the feature. After it was uncovered, Google made the feature even harder to access in Android 4.3, before ultimately removing all links to it in Android 4.4 KitKat.
While there are various mods that bring this feature back, none is more integrated at a system level than XDA user td32's modified Settings app. Instead of a separate app that clutters up your app drawer, this mod puts App Ops exactly where it should be: in the Security section of your Nexus 5's Settings menu.
- Rooted Nexus 5 (mod will not work on any other device)
- Stock Android version 4.4.4 (custom ROMs may not be compatible)
If you already have a root-capable file browser installed on your Nexus 5, you can skip ahead to Step #2. Otherwise, I'll show you how to get one installed.
Once you've got FX installed, be sure to install its Root Add-On to enable root access for the app.
To integrate App Ops at a system level, td32 modified the actual Settings app from the Nexus 5's stock firmware. To download this modified Settings.apk file, point your Nexus 5's web browser to this link. Wait until the download has finished before proceeding to the next step.
Next, you'll need to replace your existing Settings.apk file with the modded version. Use your root-enabled file browser to navigate to the Download folder of your device. From here, long-press the modified Settings.apk file and select Cut.
Next, head back out to FX's main screen and tap System (Root). If you haven't done so already, the app will ask for Superuser privileges at this point, so hit Grant on the popup. After that, tick the box next to I Understand and press OK on the Root Access Warning message.
From here, browse to the system folder, then head into the priv-app folder inside of that.
Tap the Lock Icon at the top of the screen to mount this folder as read/write, then tick the box next to I Understand and press OK again.
Next, scroll through this list until you locate the existing Settings.apk file. Long-press it, then select Rename from the menu.
From here, add a .bak to the end of the file name and press OK. That way, if you ever need to revert to the stock Settings app in the future, you can just delete the modded version and remove this suffix.
Next, tap the Clipboard button and select Paste to move the modded Settings.apk file into this folder.
Finally, long-press the newly-pasted Settings.apk file and choose Permissions. From here, ensure that the Owner category is set to Read and Write, while all other categories are set to Read.
With that out of the way, simply reboot your phone and the new App Ops functionality will be added to your Settings menu.
When you're ready to trim back the permissions of an app, start by heading to your phone's Settings menu. From here, tap Security, then you'll find the new App Ops entry.
The apps listed here are categorized by the type of permissions they have requested. You can swipe between tabs on this screen to view all of the various permissions that your apps have requested. When you find an app that has been requesting a permission that you'd like to revoke, simply tap it from the list.
From here, you'll see a list of any permissions that this app has requested in the past. If you'd like to prevent an app from using one of these permissions, you can simply toggle the switch at the right to Off.
Keep in mind that some apps require certain permissions to run, so if you experience any force-closes after modifying the app's permissions, it would be best to revisit your selections.
Which permissions have you revoked from different apps? Which app was requesting the most permissions on your device? Let us know in the comments section below.