Are there any applications that can restrict specific applications from accessing data/internet for non-rooted ICS phones? DroidWall - Android Firewall provides this functionality but it requires Root access.

  • That's only allowed for root apps. Droidwall is an iptables frontend (which configures the kernel's netfilter subsystem to act as a firewall). An app needs root privileges to do that. Obviously it would else be very easy to switch the firewall off again. – ce4 Nov 27 '12 at 11:57
  • Are the answers below still correct, or have things changed since this question was written? – RockPaperLizard Aug 16 '15 at 2:51

Mobiwol is an Android firewall application that does not require root. They somehow use the VPN interface for firewalling (without actually connecting you to a VPN server).

We've used technology available to us from within the VPN packaging module offered by Android to be able to gain visibility to your applications' network activities

I tried it and it works fine for ICS.

Should be compatible with any device running Android 3.2 or later


The other answers are correct in that setting firewall rules requires root. And if you have root, you could simply deny internet permissions for a specific app without even needing a firewall (Permissions Denied or built-in with a CyanogenMod rom).

However, there is something you can do to partially circumvent the problem. Using Set DNS, you can change your DNS provider for wifi. Set it to something like Open DNS. From there, you can set up rules in DNS to block certain domains. Thus, when on wifi, you could block apps from making requests to a specific domain.

Unfortunately, you can't do this your your cellular connection; In fact, most cell providers override any DNS requests and use their own server no matter what.

If you set up a VPN, you could do the same thing over your cellular connection, but if you have a VPN set up, you could use that server to set up firewall rules anyway.

  • I would like to create white list for network, How it would be possible by using Set DNS I have rooted emulator. – user3933607 Sep 19 '17 at 6:52

NoRoot Firewall works as the name suggests. I used it to keep my phone from downloading things by itself. I couldn’t make it persistent on that phone though, so it wouldn’t restart automatically. But while it’s running, it blocks unwanted apps just fine.

  • I highly agree with No Root Firewall, If you are familiar with using DroidWall's interface No Root Firewall is like the old editions of DroidWall before the category selection stuff, It sometimes freezes and causes temporary security breaks, so it's not exactly full-proof but it works 95% of the time. – Gadget Guru Mar 24 '18 at 1:54

Restricting internet access of specific apps isn't possible on a non-rooted device. So, an app doesn't exist.

  • 3
    While I share your opinion: Any idea how Onavo does that? It claims to be able to Restrict specific apps to Wi-Fi (among others). And I read nothing about "root" there -- neither in the app desc nor in the comments. – Izzy Nov 27 '12 at 17:26

it's simply not possible for system user to prevent another process from accessing network, it can only be done by root, therefor root is required to do firewall changes to your system.


A great firewall app alternative for non-rooted is NetGuard, it's open-source and well maintained and has been around for a while, I use it as well you can find it on the android Playstore here

Not the answer you're looking for? Browse other questions tagged or ask your own question.