Comparison of some ad-blocker apps for Android.
NetGuard, Blokada and NoRoot Firewall are three apps to reduce ads and improve privacy on your mobile device. All three give you options to filter your phone’s internet access without rooting it.
NetGuard shows you the list of URLs each app is trying to access. You can block internet access for apps completely or you can choose to allow net access only when the screen is on. The problem with the “allow access when screen on” is that it allows net access for a blocked app even if you’re using some other app because the device screen is on. In the free version of Netguard, you also cannot restrict a particular URL or IP accessed by an app. The full version with the individual URL blocking feature costs roughly US$8.
Blokada (version 4)
Blokada is good to restrict access to specific URLs for all apps on your phone. It’s basically a system-wide URL filter. By default, advertising related URLs are blocked. You can manually add URLs to this list. The in-app log shows all URL’s which your device is trying to access and the URLs that it has blocked. You can select an URL from the log to block it.
The problem is you don’t know which apps are accessing the URLs in your blocked list. This also means that you can’t block URLs by app. You may want to allow
x.facebook.com domains for Facebook (or some other app) but not allow it for your browser so that you can restrict tracking by Facebook. This is not possible with Blokada (as of v4).
There is also a beta feature that allows you to set wildcard entries to be blocked. So you could set
*.google.com to block all
google.com related domains.
NoRoot Firewall provides the features from both NetGuard and Blokada. You can completely block internet access for an app or block an app’s access to specific URLs. The Access Log shows the list of URLs apps are trying to access. You can tap on an entry entry and set it to up as a blocked URL. You can also add URLs as Global Filters to be blocked for all apps. NoRoot Firewall should be the best solution of the three but there’s an issue. The access logs in NoRoot Firewall shows the IPs an app is trying to access and not the domains. This is not ideal for us as a user to make a decision about blocking an IP. See image below that shows Pushbullet’s access log. NetGuard resolves the access into meaningful domains. NoRoot Firewall doesn’t do this and shows the IPs that the app accesses.
Blokada is positioned primarily an ad-blocker while NetGuard and NoRoot are essentially firewall apps. NetGuard also allows you to add an ad-blocker feature by creating a blocklist similar to Blokada (see Ad Blocking with NetGuard). NoRoot Firewall is like an internet access on-off switch for apps. Even though you can block by IP, you don’t really know what you’re blocking. It also has no way of blocking ads. Of the three, the paid version of NetGuard provides the best combination of features. The second best option would be Blokada.