How to block/remove advertisement from Android apps and browser

If you never used an advertisement blocker or do not even know that such things exists, this article is for you. A normal users who buys a smartphone for just clicking pictures and browsing social media never pays much attention to the ads which is being shown to him/her. These kinds of people are mostly OKAY with them and can wait 10 to 15 seconds to watch an advertisement in a Android app.

Android apps servers advertisements in different forms, such as text, banners and videos. People download random apps and games from Play Store and served with advertisements within 5 minutes or even less. Some apps do it very aggressively and bombard users with ads after tapping something in the app. 

You can block all these kinds of advertisements easily on any android phone and save some time as well as you can take advantages of your full phone screen. When these advertisement are blocked, the banner ads which you see in bottom of app or at other parts of app, they all disappear.

There are three easy ways you can blocks ads on your Android phone. One of these methods require you to have a rooted phone and the other two methods works without root for almost everyone. I am going to discuss about the non-root methods first because an average Android does not understand what Root is.

Non-Root Method

There are two methods for blocking ads on non-rooted Android.

1. Private DNS (Android 9+).

Android 9 introduced the private DNS feature. It is available in most android phones running Android 9 and above. Some phone manufacturers hides this options in their software so the user can not access it. As far as I know it is hidden somewhere deep in MIUI android pie and you have to find it using Activity Launcher app. If you are not sure if its available in your Settings of your phone (usually its under Network/Internet settings) , you can search on Google about it. Once you find it, you can follow below steps, otherwise you can use the second method.

We gonna use adguard DNS to block ads. Adguard provides DNS service which also blocks ads requests from your network. 
How to set adguard as your private DNS- 
DNS Based Ad Blocker For Android Select DNS hostname
  1. Find the Private DNS settings first. For me, its in Settings > Network & Internet 
  2. Tap on Private DNS and then check on "Private DNS provider hostname".
  3. Now enter in the text field and tap on Save.
  4. Thats it. You enabled it successfully.
There are other DNS address which you can use for blocking ads. If you have trust issues with these DNS providers, please search on Google about them before trying. Also remember that if your internet gives any kind of issue when Private DNS is turned on, it means that the DNS provider is working slow. You can try turning it off and see if everything goes back to normal.
  • (same as above DNS but this one blocks porn websites too)

2. VPN based Ad Blockers

Its clear from the name, this method utilize the VPN connection feature of Android to block ads. This is by far gives the best results in blocking advertisements. Well, you don't have to setup VPNs manually. We are going to use some trusted third party apps which can turn on/off advertisement blocking with just one tap. 
For this article, I am going to use DNS66 app, which is an open source app. It is hosted on Fdroid and is completely safe to use. 

DNS66 Android _ Ad Blocker DNS66 Android _ Ad Blocker DNS66 Android _ Ad Blocker
  1. Download DNS66 from Fdroid. (Direct Link)
  2. Install the apk and launch DNS66.
  3. Tap on the refresh icon shown in top right.
  4. Tap on the big START button and allow the app to make VPN connection. 
  5. It everything goes fine, it will be enabled and you can have adfree experience now (mostly).
Qaud66 allows you to add custom hosts file by adding a direct URL to it. If you are new and do not want to bother search for Hosts files, the default option is fine. You can find more hosts file at Energized Protection. In DNS66, you can even select apps in which you want to apply ad blocking. Blockada, Adguard and AdClear are some other apps which works on the same principle of VPN based blocking.

    Root based Ad blocker

    Root based ad blockers were used to be a thing years ago when root was popular. The availability of VPN based root blockers reduced the usage of root based ad blockers. Adaway is one such app which is still being updated by developers. Since we are talking about root based ad blockers, Energized Protection should be mentioned here also. Its not an app actually, its a magisk module. People who are familiar with root/Magisk modules would find it easy to install it. The same goes for AdAway app as well. Energized protection is more powerful as compared to AdAway, but personally for me, its a hassle to whitelist and blacklist links in it. AdAway is easy in case of white/blacklisting URLs.

    How to use AdAway
    AdAway works fine on lower versions below pie. And for Android Pie+, users have to enable systemless hosts from magisk manager settings. It is because of some read write protection introduced in system by Google. Here are the steps to use AdAway-

    Adaway blacklist and whitelist Adaway hosts Adaway-Android-Homepage
    1. Install AdAway apk from Fdroid 
    2. Skip this second step if you are not running Android Pie+. If you are using pie or above, first go to Magisk Manager settings and enable Systemless hosts option. Reboot after enabling that option and follow the next steps as usual.
    3. Open the AdAway and grant root permission. 
    4. Tap on the big red "Enable Ad-Blocking" button which you see in the main page.
    5. Thats it, you are done. In some cases, it requires a reboot for changes to take effect. I have personally tested it on Android Pie and ten, and it works fine without reboot.
    You can specify more hosts sources by adding urls of raw hosts files. It also allows blacklisting and whitelisting of URLs, making it easier to add and remove URLs when something goes wrong.