Updated December 4, 2018: This post has been updated for Ad blocking not working on DNS or Hosts based AdBlockers on Chrome for Android or Samsung Internet. These Hosts based AdBlockers include AdAway, latest Adhell 3.1.1+, SABS, and more. There is now a simple firewall rule you will need to add for Adhell 3 to work on Chrome for Android or Samsung Internet for that matter.
Original: Adhell is one of the greatest tools available for Samsung devices. It is an all in one tool which primarily functions as an Ad-Blocker across the Android platform. This means, it blocks ads on all the apps without setting up a VPN. It not only block Ads but also block Ad-Tracking and Analytics tracking as well. If you go into the reports section in Adhell, you will see the complete log of blocked ads and URLs. Apart from the AdBlocker, it also acts as a Package Disabler, DNS changer, and block or whitelist individual websites.
Adhell is primarily for Samsung devices based on the stock TouchWiz or Samsung Experience firmware. This is because it uses Samsung’s SDK to run. However, Adhell was force removed from the Play Store by Samsung because it violated their policies. Later, Adhell 2 came into existence with similar features and all the premium features available for free. It also works on Android 7.1 Nougat, and 8.0 Oreo as well.
While the Adhell 2 works flawlessly across the Android platform, users recently reported that the app did not block any ads on Chrome browser. This is due to the recent changes made by Google to the DNS usage of Chrome. The asynchronous DNS feature introduced in Chrome makes the browser use Google’s DNS instead of the device’s custom DNS. This leads to DNS-based Ad-blockers like DNS66 to not work properly on Chrome. It also affected Adhell 2. Same goes with VPN applications.
However, there is a simple fix to this issue by disabling the Async DNS. Before you proceed with the tutorial, there are certain things you should be aware of. Google introduced Async DNS feature to make the browsing experience faster. It aims to speed up page loading times by resolving the IP address of a website before you click the link. Chrome bypasses the OS DNS client and starts using its own asynchronous DNS client. Thus, even if we are pushing our own hosts file using one of Knox APIs, Chrome will retain the ability to resolve the ad servers IPs.
How to fix Ad Blocking not working on Chrome for Android for DNS adblockers like Adaway
There is a simple trick to fix this. All you need to do is disable the Async DNS flag.
- Launch Chrome app.
- Enter the URL “chrome://flags”, without quotes, into the address bar.
- You will see a new window with many flags.
- Search for “dns”.
- Set the “Async DNS” option to “Disabled” and close the tab.
You will also need to clear the DNS cache.
- Enter “chrome://net-internals”, without quotes, into the address bar.
- Select the DNS tab, and tap on “Clear Cache”.
- Restart Chrome.
This should fix you problem with Ad-Blockers.
Fix Adhell 3 not working on Chrome for Android and Samsung Internet
You can try the first method above or use the following.
- Make sure you have the latest Adhell 3.1.1+ installation guide on your Android device.
If you use Chrome for Android:
com.android.chrome|*|53to your Blacklist as a firewall rule. This will enable domain blocking to work in Chrome. Toggle firewall rules off and on again for changes to take effect.
If you’re using the latest version of Samsung Internet that come with Android Pie (version 9+),
com.sec.android.app.sbrowser|*|53to your Blacklist as a firewall rule. This will enable domain blocking to work in newest versions of Samsung Internet. Toggle firewall rules off and on again for changes to take effect.