[APP][ROOT/NONROOT][OFFICIAL] AdAway v5.12.1/ v6.0.0b

Search This thread

zgfg

Senior Member
Oct 10, 2016
7,190
4,639
tried; couldn't upload. where is 'there'? could you provide direct (upload) url? it's plain to see i'm new to github.
Sorry, it's not straightforward, better google for a guide to start using GitHub

You must first create your (first) repository, like my Etc on the screenshot, then upload there....

You'll need some time to learn, but it will be useful later 👍
 

Attachments

  • IMG_20220429_121912.jpg
    IMG_20220429_121912.jpg
    141.1 KB · Views: 86

m0han

Senior Member
Apr 30, 2012
4,799
1,889
.... create your (first) repository, then upload there....You'll need some time to learn...
do things look ok now? wonder why it is showing five 'up-to-date sources' when there are six(?).
 

Attachments

  • Screenshot_20220429-165613_AdAway.png
    Screenshot_20220429-165613_AdAway.png
    237.8 KB · Views: 119
  • Screenshot_20220429-165852_AdAway.png
    Screenshot_20220429-165852_AdAway.png
    130.6 KB · Views: 114

zgfg

Senior Member
Oct 10, 2016
7,190
4,639
do things look ok now? wonder why it is showing five 'up-to-date sources' when there are six(?).
On my old phone it similarly shows 11 on the main screen but I have them 14 active in the Hosts sources list - but it works fine

Your Hosts sources list screenshot looks ok, you have local Allowed file with 5 sites and Allowed file on GitHub with 26 (additional).
Main screen shows 31total in the Allowed box

Open Allowed box and check if it lists the correct sites

Try to open an allowed site, does it open eg in browser.
For a useful test the site should be blocked the hosts sources (to make sure that Allowed overrules).
(Always restart the phone upon changing AdAway config)
 
Last edited:
  • Like
Reactions: mrrocketdog

zgfg

Senior Member
Oct 10, 2016
7,190
4,639
shouldn't content have 3 forward slashes
ie content:///location1/location2/location3

the format is content:// while the location starts with a slash eg /location1/location so when they are together we start with 3.
The third slash is for the absolute path (location)

But here it starts with the content provider, like on the screenshot

See also:

You can test yourself in AdAway
 

Attachments

  • IMG_20220429_163035.jpg
    IMG_20220429_163035.jpg
    162.8 KB · Views: 87
  • IMG_20220429_163156.jpg
    IMG_20220429_163156.jpg
    65.5 KB · Views: 87
  • Screenshot_2022-04-29-16-32-56-535_com.android.chrome.jpg
    Screenshot_2022-04-29-16-32-56-535_com.android.chrome.jpg
    464.3 KB · Views: 81

DiamondJohn

Recognized Contributor
Aug 31, 2013
6,088
5,972
Sydney
The third slash is for the absolute path (location)

But here it starts with the content provider, like on the screenshot

See also:

You can test yourself in AdAway
My bad. Ive never used content providers in adaway personally, but was thinking it would be like the file format. Is there a practical benefit (ie apart from "the Android way") over using a simple file format link?
 

zgfg

Senior Member
Oct 10, 2016
7,190
4,639
My bad. Ive never used content providers in adaway personally, but was thinking it would be like the file format. Is there a practical benefit (ie apart from "the Android way") over using a simple file format link?
As described in an earlier post today. Try to add yourself - click + icon to Add a new host file, select File instead of URL type, it will automatically open your file explorer, navigate to the file, select - it will create the content type link with the authority/provider as mentioned

I didn't manually type in that monster content link as on the previous screenshot 😁
 

DiamondJohn

Recognized Contributor
Aug 31, 2013
6,088
5,972
Sydney
My bad. Ive never used content providers in adaway personally, but was thinking it would be like the file format. Is there a practical benefit (ie apart from "the Android way") over using a simple file format link?

As described in an earlier post today. Try to add yourself - click + icon to Add a new host file, select File instead of URL type, it will automatically open your file explorer, navigate to the file, select - it will create the content type link with the authority/provider as mentioned

I didn't manually type in that monster content link as on the previous screenshot 😁
I think I may know the answer to my own question; untested. The contents provider may be the only option for non-tooted devices, due to android security. i have always been rooted so never comprehend all the limitations of not being rooted.
 
  • Like
Reactions: zgfg

saar17

Senior Member
Aug 4, 2011
795
26
OnePlus 8T
Adaway doesn't work for some reason.
Im on a OP 8T running android 12 c.16.

See attached image, anyone can tell me what is the issue and how to solve it?
 

Attachments

  • Screenshot_2022-05-01-18-15-01-26_0d8cecce28558e4d0a8cf6af1b99c74e.jpg
    Screenshot_2022-05-01-18-15-01-26_0d8cecce28558e4d0a8cf6af1b99c74e.jpg
    257.6 KB · Views: 84

zgfg

Senior Member
Oct 10, 2016
7,190
4,639
What is "in Magisk hide mode"?

MagiskHide (DenyList in new Magisk) is irrelevant for AdAway - actually you must not put AdAway to MagiskHide or DenyList

You don't hide Magisk from AdAway (like from banking apps), to the contrary!

Make sure AdAway is not in MagiskHide (DenyList) list and reboot.
Reinstall AdAway then, and make sure you grant the root to AdAway when asked
 

ipdev

Recognized Contributor
Feb 14, 2016
1,749
1
2,962
Google Nexus 10
Nexus 7 (2013)
Adaway doesn't work for some reason.
Im on a OP 8T running android 12 c.16.

See attached image, anyone can tell me what is the issue and how to solve it?
You can try wiping data and cache of AdAway and try again.

For me..
That error message only shows up when my Magisk install is borked or becomes currupt.
[ Can also happen if your system (ROM) is borked or currupt. ]
For some reason, AdAway is the first app that gave me errors.

So you might want to look at your Magisk installation/setup.
Try deleting your magisk.db and reboot.

Wish I had a better answer for you. 🙃

Cheers. :cowboy:
 
Last edited:
  • Like
Reactions: mrrocketdog

DiamondJohn

Recognized Contributor
Aug 31, 2013
6,088
5,972
Sydney
Adaway doesn't work for some reason.
Im on a OP 8T running android 12 c.16.

See attached image, anyone can tell me what is the issue and how to solve it?

Well going from the error, the first question is do you have systemless hosts module installed in magisk?
I oerssonally havent used adaway for some time and even when I did I did not have to re-configure it more than once or twice. Bur I have a vague memo9rythat there is a setting within adaway that configyures the destination loacation of the host file. It appears magisk may be set up to accept and use the file, but adaway hasnt been told that thats where it needs to place the file. As I said, I havens used it for a while, but I would also check your physical config files ofadaway. to check the correct setting is stored.
 

zgfg

Senior Member
Oct 10, 2016
7,190
4,639
I oerssonally havent used adaway for some time and even when I did I did not have to re-configure it more than once or twice. Bur I have a vague memo9rythat there is a setting within adaway that configyures the destination loacation of the host file. It appears magisk may be set up to accept and use the file, but adaway hasnt been told that thats where it needs to place the file. As I said, I havens used it for a while, but I would also check your physical config files ofadaway. to check the correct setting is stored.
Actually, I don't recall that setting in AdAway 5.x and I think it has been commented here or under issues on GitHub that setting was removed to prevent troubles for users playing with, not understanding what is SAR read-only (where 'changing' path will not help to writing to the system hosts file), how Systemless hosts in Magisk works (and where it saves - always to /data/adb/modules/hosts/system/etc/hosts), etc

If I recall correctly, AdAway will check if Systemless hosts is enabled and it will use that part, otherwise it will try to use /system/etc/hosts (and maybe /etc/hosts)

I have also checked Preferences in AdAway 5.12 and attached its screenshots, there is no such setting to define target hosts file path

Unfortunately, when you go to Show help and tips, then it opens an outdated Help page, mentioning there the non-existent setting and even the wrong /data paths for the hosts file
 

Attachments

  • Screenshot_2022-05-03-17-28-08-427_org.adaway.jpg
    Screenshot_2022-05-03-17-28-08-427_org.adaway.jpg
    238.8 KB · Views: 73
  • IMG_20220503_174346.jpg
    IMG_20220503_174346.jpg
    255.2 KB · Views: 70
  • IMG_20220503_173720.jpg
    IMG_20220503_173720.jpg
    441.9 KB · Views: 71
Last edited:
UNCHECK is not working. I want to uncheck (white list) Glance items from the Blocked section directly (refer the attached screen record). I know to create a white list (Allow list) creating it separately is lengthy like copy each item and paste it while it would be better if we can just uncheck the items from Blocked list. In other words it should be like when we uncheck an item in blocked list, the items should automatically be added to Allowed list. Please make it possible.
 

Top Liked Posts

  • 40
    Hi all,

    I talked about it for weeks, if it's not month, but it's finally here! 🎉
    The new major version comes with a whole new VPN ad-blocker implementation that greatly improves stability and reliability. Most of the disconnections issue should be fixed by now.
    I daily use it for months, using cellular (4g + 5g) and WiFi (private + public + public behind authentication portal) networks, doing handovers between them and it works fine. I distributed early builds on GitHub issues and I got good feedback too.

    I also work on DOH (DNS Over HTTPS) support. It works but it is not yet configurable from the settings.
    I might add other DNS client alternatives later to provide a better privacy.
    And of course, it comes with a batch of bug fixes and third party upgrades.

    If you like the project, feel free to show your support or become sponsor 💖
    Without further ado, here comes the full changes!

    Changelog:
    • Add a new VPN ad-blocker implementation
    • Add initial DOH (DNS Over HTTPS) support
    • Add VPN connection monitor, heartbeat and throttler to improve reliability
    • Add long press action to copy hostname from user lists and DNS log to clipboard
    • Fix VPN state on network connectivity change and lost
    • Fix VPN restart when system kills it
    • Fix wrong DNS read on VPN restart
    • Fix VPN unwanted restart while paused
    • Fix crash on application update unknown size
    • Improve VPN user control reliability
    • Update logging system
    • Update libsu
    • Update Android gradle plugin
    • Update AndroidX libraries
    • Update NDK
    • Update third party libraries

    Download:

    AdAway v6.0.0b
    26
    Hi all,

    It's been a long time since (more than two months 😮) the last update.
    During this period, I mainly spent all my free time preparing for job interviews and, good news, I just signed a new contract! 🎉
    And with my 2 weeks trip to USA canceled due to covid, I found some hours this week to fix the most urging issues.

    So, here comes the v5.12.1 that fixes the root ad-blocker on Android 13 (AdAway failed to install the hosts file).
    It also slim down the F-Droid build that recently grows from 15mb to 25mb (due to the wrong NDK).

    On top of that, I will also relaunch the beta update channel to distribute the v6.
    Since I know I will have free time in the coming weeks, I could properly follow its launch and handle the user feedback. So stay tunes!

    (As usual, beta versions will only be available for the GitHub install users as F-Droid store does not handle it.)

    Changelog:
    • Fix hosts file install on Android 13

    Thanks:

    Special thanks to AAGaming00 and KieronQuinn for their bug reports.

    Download:

    AdAway v5.12.1
    18
    Hi all,

    For the record, I patched the backend to improve the beta channel behavior.
    It will now serve whatever beta or stable stable release is the most up-to-date.

    So now, if you subscribe to beta channel, you will receive the upcoming beta builds (as previously) but your app will keep updating once the v6 hits stable channel (whereas previously it was stuck on old beta builds indefinitely).

    For those who want to try the bleeding edge, feel free to switch to beta channel!
    (keep in mind beta channel is only available for GitHub install users)
    7
    Further on boxes, check, and colors.

    It first appeared that the buttons on the Blocked and Redirected lists were always the same. While experimenting, I've been able to produce Blocked list buttons of empty white box and red checked box. I can toggle them.

    This leads to the quesion of what do the changable colors on the blocked list buttons mean?

    Similar on the redirected list.

    Finally, when I use the search feature, there doesn't seem to be a way to turn it off, i.e. restore all entries to the display. But save that problem for later.

    If I can get a good explanation of things, I will write a help page.

    Next topic is how the allow, block, and redirect lists interact. For example, which order are they searched? When a wild card is on one list, will it catch an exact match to an entry on another? How do the "pre loaded" (source) lists take precedence, and how can entries be overridden since they don't seem to be deletable from the user lists.
    Answering to one of your questions:
    Allowed is stronger than blocked

    First off all, if you don't have any hosts source, than all sites are allowed.
    Hence you actually don't need to put anything to the Allowed list

    But as the name says, this is an ad blocker. Hence the purpose is to use the hosts sources that will BLOCK certain sites

    But once you start using someone's hosts source (by default, I'm talking about the blocking lists), you have no influence on which sites will be blocked by the hosts source or not

    If it blocks to less, you will another hosts source to your list, and later maybe more and more hosts sources there

    However, at some moment you may find that you can no more shop at eg Amazon, because one (or more) of your hosts sources blocks the Amazon. You could spend time to find which hosts source blocks the Amazon and remove it from your hosts sources list. But the Amazon may soon appear in another hosts source...
    Or, you may otherwise like that hosts source that blocks the Amazon because it blocks a zillion of other sites you really want them to be blocked

    Hence you better put Amazon to your own Allowed list. Then you don't need to worry about in which of your hosts sources Amazon is blocked (or might become blocked in the future, upon the hosts sources updates)

    AdAway first reads and compiles the list of Allowed sites. Then it goes to the blocked lists. Whenever it finds the Amazon site (that you did put to the Allowed list) in any of the blocked lists, it will ignore it, knowing that you specifically asked to allow that Amazon site

    That's the use case behind the Allowed list. And the reason why it is, and why it must be stronger than Blocked list.
    And the same policy (allowed is stronger than blocked) applies also to other ad blockers
    6
    Sorry all for a bit of OT. 🙃
    OT for this thread but, slightly relevant with the last few comments/posts.

    Also true! 8+ has all of those: https://chromium.googlesource.com/a...pstream/shell_and_utilities/#android-8_0-oreo

    (Actually you can see Android's had those specific commands since the beginning, though their implementations weren't without their quirks back then). 🙂
    It is odd though. :confused:
    The toolbox binary is depreciated but, still exists in Android 12L builds.
    getprop (for example) is reverted back to toolbox for some reason. 🙃

    Note:
    Stock Google.
    The command is only included in toolbox if not available/(or reverting) the one available in toybox.


    Code:
    angler:/ $ toybox
    acpi base64 basename blkid blockdev cal cat chattr chcon chgrp chmod
    chown chroot chrt cksum clear cmp comm cp cpio cut date dd df diff
    dirname dmesg dos2unix du echo egrep env expand expr fallocate false
    fgrep file find flock free freeramdisk fsfreeze getenforce getfattr
    getprop grep groups gunzip gzip head help hostname hwclock id ifconfig
    inotifyd insmod install ionice iorenice kill killall ln load_policy
    log logname losetup ls lsattr lsmod lsof lspci lsusb makedevs md5sum
    microcom mkdir mkfifo mknod mkswap mktemp modinfo modprobe more mount
    mountpoint mv nbd-client nc netcat netstat nice nl nohup od partprobe
    paste patch pgrep pidof pivot_root pkill pmap printenv printf ps pwd
    pwdx readlink realpath renice restorecon rev rfkill rm rmdir rmmod
    runcon sed sendevent seq setenforce setfattr setprop setsid sha1sum
    sha224sum sha256sum sha384sum sha512sum sleep sort split start stat
    stop strings swapoff swapon sync sysctl tac tail tar taskset tee time
    timeout top touch tr traceroute traceroute6 true truncate tty tunctl
    ulimit umount uname uniq unix2dos uptime usleep uudecode uuencode
    vconfig vmstat wc which whoami xargs xxd yes zcat
    angler:/ $ 
    angler:/ $ toolbox
    dd getevent newfs_msdos

    Code:
    oriole:/ $ toybox
    [ acpi base64 basename blkdiscard blkid blockdev cal cat chattr chcon
    chgrp chmod chown chroot chrt cksum clear cmp comm cp cpio cut date dd
    devmem df diff dirname dmesg dos2unix du echo egrep env expand expr
    fallocate false fgrep file find flock fmt free freeramdisk fsfreeze
    fsync getconf getenforce getfattr getopt grep groups gunzip gzip head
    help hostname hwclock i2cdetect i2cdump i2cget i2cset iconv id ifconfig
    inotifyd insmod install ionice iorenice iotop kill killall ln load_policy
    log logname losetup ls lsattr lsmod lsof lspci lsusb makedevs md5sum
    microcom mkdir mkfifo mknod mkswap mktemp modinfo modprobe more mount
    mountpoint mv nbd-client nc netcat netstat nice nl nohup nproc nsenter od
    partprobe paste patch pgrep pidof ping ping6 pivot_root pkill pmap printenv
    printf prlimit ps pwd pwdx readelf readlink realpath renice restorecon rev
    rfkill rm rmdir rmmod rtcwake runcon sed sendevent seq setenforce setfattr
    setsid sha1sum sha224sum sha256sum sha384sum sha512sum sleep sort split stat
    strings stty swapoff swapon sync sysctl tac tail tar taskset tee test time
    timeout top touch tr traceroute traceroute6 true truncate tty tunctl ulimit
    umount uname uniq unix2dos unlink unshare uptime usleep uudecode uuencode
    uuidgen vconfig vi vmstat watch wc which whoami xargs xxd yes zcat
    oriole:/ $ 
    oriole:/ $ toolbox
    getprop modprobe setprop start stop toolbox
    oriole:/ $

    ---

    When I was going though the toybox updates.
    I laughed out loud when I saw they where Douglas Adams fans like me. :p

    Including one of my favorite lines from the books. 🙃

    "We are now cruising at a level of two to the power of twenty-five thousand to one against and falling, and we will be restoring normality just as soon as we are sure what is normal anyway."

    - The Hitchhiker's Guide to the Galaxy​

    Cheers all. :cowboy:
  • 3330
    icon.png
    AdAway

    AdAway is an open source ad blocker for Android using the hosts file.


    Google Play Store notice

    According the Google Play Developer Policy, especially the "Device and Network Abuse" section, ad blocker like AdAway violates the "Apps that block or interfere with another app displaying ads." rule and can't be distributed on distributed on the Play Store.
    As Free and Open Source Software, AdAway is available from F-Droid Store or this XDA thread :good:


    Requirements

    This application requires Android 8 or above and does no more require root.

    For older Android versions, a rooted device is required.


    Changelog

    If you don't want to read each announce post of this thread, you can:


    Downloads

    Stable versions are available on GitHub releases and F-Droid Store:

    Beta versions are available on GitHub releases only:

    AdAway 6.0.0

    The app provides an in-app updater for both GitHub and F-Droid builds.
    Keep in mind beta channel is limited to GitHub builds, and F-Droid releases usually have a several days latency.


    Problem? Read this

    * If you use Chrome and still see ads on web pages, remember to disable the "data saver" or "reduced data usage" browser option.
    * Check your APN settings for any proxy, the proxy itself could be allowing ads. Disable the proxy.
    * After you install or make any change to AdAway, you must reboot for those changes to take effect.
    * If you are still having issues please read and understand all the info in the wiki before asking for help here.

    Otherwise, this is the right thread to discuss about it or file a bug report here.


    Contributors

    PerfectSlayer, Vankog, jawz101
    Source Code: https://github.com/AdAway/AdAway
    170
    Hi all,

    A new year is coming and I wish you all to have nice holidays :victory:

    Just few words about this ending year. There was about 12 releases in 2019 which brings you a new UI, a lot of bug fixes, Android 10 support, Gist and GitLab hosting support and better Magisk support.
    All of this is possible thanks to the community to help users to discover the app, learn how to use it and report any new bug and also your moral, nice words and thanks you can send to me, and financial support.
    Thanks a lot for all donators, GitHub sponsor and the Pixel 2 you sent me to test Android 10 support.

    For the next year, I hope to release the next version (V5), at least in beta to start. It's been 9 months since its first lines of code and things are working quite nicely.
    It aims to make the app simpler to use for the main use cases, support rooted and non rooted devices and remove old hacks/workaround which are no more needed on recent setups.

    But before this big next update, I still have time to fix current issue with a new release :p

    Changelog:
    • Fix GitLab hosting support (commit date parsing failed)
    • Translation update

    Thanks:

    Special thanks to @gallegonovato for its helpful bug report and @Vankog for translation update.

    Download:

    AdAway 4.3.2 on AndroidFileHost (md5: 78fde09a0e92044c45e901bb1cec8e2e)
    159
    Hi all,

    Long time no see! It's been more than two months since the last update.
    I can't say I was not active on the project as I start working on a new version (5.x.y) as a side project.
    I won't share the source code yet as it is not ready at all and I don't want to give an ETA but this new version targets the following goals:
    • 1. Revamp the UI
    • 2. Clean up old support
    • 3. Address one of the main drawback of the app

    1. The card based UI does not feel right. Welcome card takes too much space, update button / status has a lot of critic. I guess I can do better.
    I started a new simpler and lighter design which provide the most useful information on home screen and all main actions to trigger in one tap (no more burger menu).
    It is still under heavy development but I hopefully get a friend onboard, specialized in graphics and design, to help me :highfive:

    2. In order to simplify the development, I clean up the app and remove support for old features.
    I bump target SDK version so I finally get Java 8 language feature (it was released 5y ago…) and move to topjohnwu root library (instead of home made one). It means systemless support is now handled by Magisk and other root solutions will still work.

    3. Think of what prevent most of users to use AdAway? Now it's gone!
    It's not gone forever. It's still here but there will be a fallback to workaround it.
    I won't tell more until the first public beta but I guess you get the point :fingers-crossed:

    In the meanwhile, here is a new version!

    Feedback:

    Is anyone using a hosts list hosted on Gitlab? It keeps showing "Unknown update status".
    GitLab, like GitHub do not set LastModified HTTP header so update status is not supported... yet!

    Changelog:
    • Add Gist and GitLab hosting support for hosts file
    • Add option to set default IPv6 redirection
    • Improve reboot command
    • Improve UI for overlays
    • Update translations

    Thanks:

    Special thanks to @MSF Jarvis and ralayax for theirs contributions and @andy356 for its helpful bug report.

    Download:

    AdAway 4.2.5 on AndroidFileHost (md5: ab81225745afaaa7646024109de299c0)
    148
    Hi all,

    Feedback:

    Hmm, not working for me for this URL, v4.1.0 shows something like not updated in -360 days (some large negative value). Can you please see if you can reproduce?
    https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn/hosts
    It works well here. I failed to reproduce as I change the HTTP client library and how I use it.
    But update date for the source you link definitely works now.

    All the F-Droid apps I know of have manual push updates to the store.

    Isn't automatic build basically for nightlies?
    Not really. You could choose a lot of different mode.
    For example, F-Droid server watches AdAway GitHub repository to find tags which match a specific versioning pattern.

    I exist still... do you know what i have to do to transfer ownership? if i edit project it doesn't let me change the primary author so i assume i have to PM some higher up to make this happen?
    Thank you so much! :highfive:

    This is now done, @PerfectSlayer is the OP of this thread.
    Thank you too!


    Changelog:
    • Add hosts source download cache
    • Add snackbar notification to update host from DNS request listing
    • Update UI from Material Design to Material Theming
    • Update gradle, plugins and dependencies
    • Fix crash parsing not defined host source last modified date
    • Fix native modules build script (required for F-Droid build server)
    • Fix Transifex issues

    Thanks:

    Special thanks to all recent donators! Your help is really appreciated :good:

    Download:

    AdAway 4.2.0 on AndroidFileHost (md5: 023169e7c345ef7297095793024f8478)
    144
    Hi all,

    I talked enough about it the past weeks and here it is: the first beta for the next version of AdAway.
    As you know, the main feature is the removal of root requirement but it also comes with a lot of improvements like an easier to use UI, a builtin updater, new cache and databases to improve reliability or even a quick pause/resume adblocking button that 3rd party apps can control.

    It took me literally a year and 330+ commits to build it (the first commit of this branch was April the 7th) and I hope it will be worth it.
    It should allow the app to be viable in the future with root being more and more difficult to achieve at each new Android release and Google hardening SafetyNet checks.

    I will try to answer to the most expected questions here so you still can post a link to this FAQ later to lost users.

    FAQ:

    Does this version replace the v4.x versions?
    No. This is still a preview version and does not replace the stable one.
    It is available to test it and report issues and feedback before being promoted to stable.

    Can I upgrade and revert safely?
    Yes. Both v4 and v5 use the same settings export format.

    Why does this version targets Android 8+ Oreo only?
    Like the v4, v5 is expected to offer support for latest devices.
    Android 8 and above represent more than 60% of device distribution and will grew through time.
    If you use an older device, root solutions work very well and v4 is here for you (like v2 and v3 stayed for legacy devices).

    How the hell does it work without root?
    This version provides two adblocking methods: the usual root one using hosts file and a new one using local VPN.
    The VPN solution allows to filter and alter connections of your devices without root access.

    Is using a VPN safe?
    In the case of AdAway, yes. It uses VPN API but does not connect to a VPN server.
    In the case of VPN client app, it depends.
    To give you more details, a VPN client app uses the VPN API to create a virtual network interface on your device and redirect all your traffic into it.
    If you imaginge the VPN like a pipe (the right word is tunnel), client VPN app outputs all your traffic on a VPN server which is able to check what you are doing on the Internet.
    With AdAway, your network is not redirected to a VPN server but your device internet connection (same as no VPN). VPN API is only used to get traffic into it to break the connections to ad servers.

    Is VPN use battery?
    Yes, like everything you do on device.
    Witouth root, a VPN service will be running permanently to filter your traffic.
    Good news is it will only filter DNS traffic. Not all traffic is redirected into it so it won't be as expensive as you can fear.

    Did you come up with this idea alone?
    Absolutely not! I spent a lot of hours trying to find altenatives to hosts based adblocking (like routes or private DNS). But nothing was better than VPN based adblocking.
    So we (MrRobinson and I) approched Julian Klode, developer of DNS66 more than three years ago to see if we can merge our apps. It wasn't that easy as we don't develop our apps the same way so I ended up by integrating the DNS66 adblocking method into AdAway. It is fine for Julian, his app is Open Source and he himself built it from the core code of AdBuster app (an VPN based adblocking app).

    Should we stop using DNS66 for AdAway?
    Not at all. DNS66 is a great app and provides some features that AdAway doesn't have (yet?), like DNS settings.
    DNS66 is a great app, keep using it if you like it!
    If both apps used the same adblocking method a year ago when I start this version, I keep adding feature to the VPN adblocking method and most of them won't be in DNS66.
    If Julian ports them back to DNS66, it's great if it can help his app and users!

    Is it me or the app put on weight?
    Yes, the app significantly grew due to new libraries like VPN related ones and Android Jetpack.
    It also stores more data on device: a http cache, a host database, a hosts copy, etc...
    I think 15~20mo of storage is still fine.

    Changelog:

    Without further ado, check the summarized changelog (it was hard to summarize a one year development)

    • Add new home screen
      • Provides all main controls from one screen
      • Displays currently blocked, allowed and redirected domains
      • Displays current hosts sources status and control to force apply
    • Add non root ad-blocking feature
      • Uses a builtin local VPN to filter DNS request to blocked domains
      • Based on the work of dns66 by julian-klode
      • Allows to excluded system applications and per user applications
    • Add builtin updater with changelog display
    • Add feature to quickly pause and resume ad-blocking
    • Add wizard screen for first run setup
    • Add feature to display and filter all blocked, allowed, redirect domains
    • Improve preferences screen
    • Add broadcast receiver to control ad-blocking from third party applications
    • Update Android target to Android 10
    • Improve root and shell support
    • Split translation files to easier understand their context
    • Add GitHub action test and build tasks

    Download:

    AdAway 5.0.0 beta (sha2: 200fd7789b174735d3af5925b4e568b09475bb3f39a79d24d6617af4b19cd19d)

    If you like my work, feel free to support me. Check my sign for donation links. Thanks all! :highfive: