DNS66, Works without root by creating a local VNM that it then runs its own DNS (with blocklists) on. End results are all the banner adds on most apps will not show up etc.
I'm not sure this is necessary anymore now that Google added DNS over TLS ("Private DNS") in Android 9. Just choose a DNS server with your preferred blacklist built in and configure it with native Android. Much better perf than using a fake VPN like DNS66.
https://f-droid.org/en/packages/org.jak_linux.dns66/