Do you want to block the mobile advertisement from appearing in the screen of your standalone (can work locally without network connection) apps or games?
Do you feel suspicious and insecure when you discovered there are network activities from some of the apps installed in your smartphone, even though you didn't open them, or the apps suppose to work locally without the need of connecting to the network?
Would you like to restrict certain apps that consume a lot of network data usage, such as e-Magazines, e-Newspapers, etc., so that they can only use WiFi connection to access the network, and not using your precious mobile data plan?
If you have already rooted your Android device, you can install the free Firewall Plus.
I found this Firewall Plus very straightforward and easy to use, and it has a very small file size of 239kb only.
It will list down all the apps in your Android device, which you can select to allow the apps to have WiFi access, or 3G/4G mobile access, or both, or none, respectively.
It has 2 modes, the Blacklist mode is useful when you want to allow majority of the apps to have full network access, and the Whitelist mode is useful when you want to disallow network access to all the apps by default.
Firewall Plus works on top of the built-in iptables firewall in Android.
If you haven't rooted your Android device, you can also try another app called NoRoot Firewall. NoRoot Firewall leverages on the VPN function of your Android device to perform its firewall function, which I think is less efficient than Firewall Plus.
By the way, if you have installed 3G Watchdog or its Pro version in your Android device to monitor your network usage, it is able to show you the usage by apps very clearly.
Of course, you can also make use of the Data Manager inside the Android Kitkat system to check for network usage by apps.