Apps are one of the cornerstores of smartphones. They extend the phones functionality, provide you with the means to customize it, or provide you with entertainment in the form of games.
Apps may request permissions during installation or upgrade, and one of those permissions is to access the Internet. It is likely that most Android users do not go through the list of permissions that an app requests before it gets installed, similar to how many Windows users do not pay attention to the setup steps of a program they install on their system.
Once you have installed an app, it may make use of those permissions as it sees fit. If you have allowed Internet access, it may connect to servers on the Internet, often without you knowing about it unless you run monitoring software on your system.
NoRoot Firewall is a specialized app for Android devices that puts you back in control. What makes the app special is the fact that it does not require root access for its functionality.
It uses an ingenious workaround for that, as it makes use VPN functionality to do so. Basically, all traffic flows through the app once you have allowed it to create the connection.
The app does not create a "real" VPN connection though, and no data is sent to servers on the Internet in the process.
Once done, you will be informed about connection attempts that applications make on your phone. It is up to you to allow or deny the connection. Note that all pending attempts are blocked automatically until you allow the connection to go through.
Notifications are displayed whenever a new app tries to establish a connection to an Internet server. You can open the pending access tab of the app to go through all apps that have tried to connect to the Internet, and either allow or deny them individually here.
The apps listing on the other hand displays all system and user-installed applications. Permissions to access the Internet using WiFi or a wireless connection are displayed here, with options to allow, block or remove the permissions right on this page. You can use it to monitor permissions that you have added, or whitelist or blacklist applications whenever the need arises.
Another interesting feature of NoRoot firewall is the global filters option. You can run filters before or after individual app filters apply. A filter provides you with options to allow or block connections to specific addresses and ports on the Internet.
A pre-filter would overrule any app specific filters or post-filters that you have created. This can be used to block access to specific servers for all apps, or whitelist servers instead.
NoRoot Firewall ships with an access log that is interesting as well. It logs all connection attempts of all apps, displays the server IP address and host name the connections are made to, highlights time and day, and informs you whether the connection was allowed or not.
You can configure the app to run on boot, so that it is always active on the Android device.
If you want more control over apps and their Internet connections, but do not want to root your device, then you may find NoRoot Firewall more than useful for that task.
The app leaves little to be desired in terms of functionality. It needs to be noted that it does not work if you need to connect to VPN servers, as its own will block that from happening. It is also not supporting LTE right now.