Is it possible to disable the "grant/deny" popup dialog when my app needs to perform tasks that require root access? I have full control of the device the app will run on (internal project), the device is rooted and it has supersu 2.x app.
The supersu docs tell me that I need to declare the android.permission.ACCESS_SUPERUSER permission for my app to disable the popup, but it has no effect.
Is there a simple way to solve this (without changing the option i supersu app settings)?
Misterer said:
Is it possible to disable the "grant/deny" popup dialog when my app needs to perform tasks that require root access? I have full control of the device the app will run on (internal project), the device is rooted and it has supersu 2.x app.
The supersu docs tell me that I need to declare the android.permission.ACCESS_SUPERUSER permission for my app to disable the popup, but it has no effect.
Is there a simple way to solve this (without changing the option i supersu app settings)?
Click to expand...
Click to collapse
In SuperSU(app)'s options,
http://2.bp.blogspot.com/-3lWSZpEIc6Y/USs4H2B8jXI/AAAAAAAADww/BMz468GPKAk/s1600/SuperSU+Pro+---.jpg
Set (Prompt) to (Grant)
Related
Or what is the exact mechanism behind this in Android? I have been using GNU/Linux for many years so I understand the original concept and would not want every app to have root privileges.
The Superuser app allows you to accept & deny all root apps. You can also choose to always allow certain apps, but you don't have to.
I don't quite understand this. Who gives the apps the privileges. I suppose the Superuser app is only the frontend for some system service. And does it work as a white list or as a black list. Meaning: Does every app get root priviliges by default on a rooted phone or do I have to manually give root privileges to desired apps but the rest doesn't even realize it's on a rooted phone.
By default, apps are denied root privileges. If I restore an app that runs as root in the background -along with its data - the app won't work until I launch it & grant it superuser permissions. Droidwall is a good example of this. Droidwall works by denying or allowing 3g and/or wifi access to apps based on your input. It does this by changing the iptables. If I flash a new ROM & restore with Titanium Backup, I usually forget that Droidwall isn't doing its job until I notice ads in an app that isn't supposed to connect. Once the app is launched & I choose to apply the rules, Superuser prompts me to allow the changes. If I do not make a choice within 10 seconds, SU automatically denies the root request.
In short, an app will never run as root (aside from superuser itself, if that counts) without you first allowing it. Also be aware that most everyday apps will never ask for root access as they don't need it to run. Only apps that are making changes to the system (reading or writing) will need root access. As far as accessing your contact data & other stuff you may worry about, any app can do that if it has permission (not root) to do so. When you first install an app, you will see a list of permissions - usually an app needs those permissions to run and there's nothing to worry about.
OK, thanks I understand it more now. What would happen if I didn't install Superuser. Is there a built in daemon for superuser privileges?
Don't fight the powers that be. Install superuser. You need it.
I'm pretty sure you'll get error messages from most root apps. I could be wrong, though. Next time I'm about to flash a new ROM, I'll remove Superuser after I do my backup, just because I'm curious. I'm pretty sure that Superuser or an alternative - if one exists - is necessary. I know the ability is there in the os, but I would think that it would need some kind of vehicle (such as an app) to relay the information. I certainly hope apps wouldn't automatically be granted root privileges, but I'm not sure. It's an interesting question, though.
Roms come pre-loaded with Superuser, and any auto-root method does as well. You would only be without it if you root manually, stay on stock, and choose not to push the app. Or, I guess, if you choose to remove it.
Hello, my device is rooted and I can check it through the Root Checker app and I can also use all the features that require root access (Android Tuner, Root Explorer, etc.) but I cannot use the Permission Pro (aka Permission Denied) app. For instance, when I want to disable some permission feature, it says that the app doesn't have SuperUser permission. Also, I cannot find the app in the app list in the SuperUser app. Also, when I launch the app, the "SuperUser box" didn't pop up for me to select "gain SuperUser permission". What is the problem?
I have a certain app that I need to use that will not run on a rooted device. My root app is SuperSU, and by disabling superuser in the settings the app will run, but I can't make it work without disabling it. It doesn't even give me a prompt to ask for root permission - the app must just be looking somewhere for the su binary or something.
Is there a way to make an app think that a device is unrooted without disabling root access?
mewmew! said:
I have a certain app that I need to use that will not run on a rooted device. My root app is SuperSU, and by disabling superuser in the settings the app will run, but I can't make it work without disabling it. It doesn't even give me a prompt to ask for root permission - the app must just be looking somewhere for the su binary or something.
Is there a way to make an app think that a device is unrooted without disabling root access?
Click to expand...
Click to collapse
Xposed framework with Root Cloak module. It doesn't always work, but it often does, so give that a try.
If an application is signed with the system signing keys and installed into system-priv does that application have root privileges? Does it have access to all permissions and have the ability to run shell scripts as root?
Thanks
cbrammer said:
If an application is signed with the system signing keys and installed into system-priv does that application have root privileges? Does it have access to all permissions and have the ability to run shell scripts as root?
Thanks
Click to expand...
Click to collapse
Yes, it certainly does...
Thank you !
cbrammer said:
If an application is signed with the system signing keys and installed into system-priv does that application have root privileges? Does it have access to all permissions and have the ability to run shell scripts as root?
Thanks
Click to expand...
Click to collapse
Not strictly "root" permissions. It has access to "system" and "signatureOrSystem" permissions, which are the highest Android permissions available.
They shouldn't be able to violate the Android sandbox however (i.e. read data from other apps etc), but will have access to do many privileged operations.
pulser_g2 said:
Not strictly "root" permissions. It has access to "system" and "signatureOrSystem" permissions, which are the highest Android permissions available.
They shouldn't be able to violate the Android sandbox however (i.e. read data from other apps etc), but will have access to do many privileged operations.
Click to expand...
Click to collapse
Great answer, thank you! Does it have access to running commands like `pm install ...`, `settings put ...` ?
cbrammer said:
Great answer, thank you! Does it have access to running commands like `pm install ...`, `settings put ...` ?
Click to expand...
Click to collapse
Yes, it can install apps without prompting the user (that's how Google play do it I believe).
You don't need to use the shell commands for this though - you can call the internal APIs when you are signature or system. Check the source for ideas of how to do it. For example the settings app is a good place to figure out how to change system settings in the global settings store, and there are APIs available for this.
I guess he does not need to install root
My story beging with installing apps on stock nubia ROM which require some permissions to work.
After trying to grant permission to the newly installed app, the system prompts ' Overlay detected' again thus you are unable to set the requirements.
One solution that i found is : go to Settings>Apps>3 dots >Reset app preferences.
After that you will be able to grant permissions manually to your apps.
The only drawback is that you need to re-grant permissons manually for all your apps again whenever you need this whole method.