I have Android 4.4.4 Cyanogenmod 11. By its very nature, it is already rooted. Is there an integrated application that would allow me to set privileges per application? For example:
- If an application wants to send an SMS, I want my phone to ask me if I want to allow this, but Hangouts are exception.
- For the Internet connection: I want my browser to access it, but I don't really want a dice roller to do it when I'm not sharing my roll results with friends.
- Image processing apps should have access to my images, but other apps should need a specific permission.
And so on. Basically, for every permission on the list, I want to be asked if I want to allow it once, allow always always, deny once or deny always, per application. With as much information (like phone number app is calling, filename of photo, or URL it is trying to access) as possible.
Is there any tool like that available? My friend suggested LBE Privacy Guard, and I tried it, but "tried" is a bit big word: It was crashing once every few seconds and I uninstalled it as fast as I managed.
List of things that can be controlled (tested)
To address answer below, I tested some things:
- SMS Sending - control shipped with CyanogenMod works without breaking anything, I just can't find any per-app control
- Making phone calls - nothing breaks when I'm in place with no gsm coverage, apps give up gracefuly
- Making HTTP requests - Set up control on my proxy, apps can wait 20~30 seconds, if I fail to decide in that time they usually simply give up on this request and retry later - just like if phone was in aeroplane mode at that moment, it seems.
- In-app shopping - with no credit card attached to any account, I'm asked to add one. Apps wait for my reaction. So waiting for user's response and handling no payment method situations is already implemented.
List of things that I'm sure could be controlled, but cannot reliably test
All kind of listeners - on the startup I could get notified what app wants to listen to, and if I decline, it's listener object should simply never get anything. If I don't want this particular app to know I got SMS, why not to make it think I never got any? Shouldn't break it more than simply being in aeroplane mode.
File access - Apps don't break if I
chmodthem out of my photos, for example. They simply display "could not open image", or "could not save image data". So at least keeping them out of my photos should be doable. Don't know what delays would apps accept, but I believe with most of them I could simply retry action after granting specific permission. Permissions could be timed, like Bluetooth sometimes is.
Lists above cover all I really want from control app. And things on the first one may cost, so they are more important.
There was one, in Android 4.3 Jelly Bean.
Sadly, it was removed. So all I want is to go back to the "stone age" of 2012, not the one of first Nokia phones.