Only yesterday have we released an urgent hotfix for Adguard v2.8, and today there is going to be another one. It is not normal when such things happen, we realize it, and want to apologize to all of you. We'll do our best to avoid such situations in future.
The most major fixed problem concerns one of the low-level settings - pref.vpn.ipv4.bypass, which, as the name suggests, allows to disable filtering for all ipv4 traffic. It was simply missing in the latest release version.
Along with the problem mentioned above, a couple of other issues were addressed.
An important hotfix for the recent release of Adguard v2.8. It contains only one, but crucial fix:
[Fixed] Routes exclusion string bug #939
This bug affected Adguard's work in WiFi networks and could lead to several problems, such as: no filtering fore some websites, local network FTP-server disability, incorrect functioning of WiFi calling feature.
Finally, it's time for Adguard for Android 2.8 to come to light! It brings the ad blocking quality to the next level with several big novelties such as Simplified domain names filter or extended CSS support. Many new low-level settings will allow advanced users to customize app to their liking, and for all the rest we bring quite a few quality of life improvements and bugfixes. We hope everyone finds something useful in the new Adguard for Android version.
[Added] Support for Extended CSS and Extended Selectors #810
Extended CSS support is a very important addition in terms of future (and present) possibilities that it opens for ad blocking. Extended CSS is a module for applying CSS styles with extended selection properties. Basically, it means that we will be able to select and, therefore, block some elements that we would not be able to block otherwise. Currently we support following pseudo-classes: -ext-has ( :has ), -ext-contains ( :contains ), -ext-matches-css ( :matches-css ).
'Extended selector' is a technical term, but what hides behind it? With extended selectors support, we can much more easily create some rules that were very, very hard to create earlier. Notably, this concerns rules required to block such things as 'Sponsored posts' on Facebook.
[Added] Simplified domain names filter #876
Fresh addition to the Adguard filters family. Simplified domain names filter is composed of several filters (English filter, Social media filter, Spyware filter, Mobile ads filter, EasyList and EasyPrivacy), modified for better DNS filtering. It blocks ads and trackers wherever it is possible to indicate own DNS addresses. Note that it will block the whole domains and not the specific URLs. You can learn more about DNS blocking by visiting our website adguard.com.
[Changed] "Filter DNS requests" feature is now available for non-premium users #875
With Adguard DNS introduced and being free, there is no point in keeping this Adguard for Android feature paid. Now it will be equally accessible for all users alike. There is still plenty of good stuff in the Premium version of the app :)
[Added] pref.root.clear.youtube low-level flag #907
This option will allow rooted users to automate removing Youtube app data, which appears to be crucial for blocking ads in it. By the way, in one of the recent articles in our blog you can find a detailed guide to blocking ads in YouTube app.
[Added] pref.vpn.ipv4.bypass low-level setting #909
If this option is enabled, Adguard will ignore all IPv4 connections. This might appear wierd and unnecessary, but in reality it allows to use Adguard as a 'DNS-level' ad blocker. You only need to enable the following options: pref.vpn.ipv4.bypass, pref.vpn.ipv6.bypass, DNS requests filtering and Adguard DNS filter (the latter is not crucial, but will help immensely with blocking ads in browsers). Adguard will cease filtering other apps' traffic, and will only block ad domains on the DNS requests level. As a result, ad blocking quality will drop and Firewall functionality will not be available, but also there will be close to zero performance penalty.
Lots of other minor issues and compatibility fixes. The full list can be found in our GitHub repository inside the descriptions of previous beta versions.
Hi! We can't wait to tell you about new Adguard for Android version!
It has a little bit for everyone. If you like to have everything under control and customize filtering for every app, check out new settings section - 'Apps & Statistics'. It is much easier now to make your apps behave exactly as you want them to.
For custom filter rules enthusiasts we have a new modifier: $app. Create rules that affect only one specific app, or all other apps except for it.
Those who use Android N devices will save a lot of nerves now - new version of Adguard automatically detects if an app is created specifically for Android N, which allows to avoid many problems (this affects some other potentially problematic apps too).
And everybody will notice a general increase in quality. Many bugs were fixed, many useful changes were made. All details are in the changelog below.
[Added] ‘Apps & Statistics’ settings section #633
We decided to seriously redesign our Firewall section. There will be no more ‘Apps & Settings’ sub-section inside ‘Firewall’. Instead, we introduce a whole new first-level section named ‘Apps & Statistics’. It very much resembles the now gone ‘Apps & Settings’ but has some differences. For example, we got rid of ‘global’ switches - these buttons were too misleading.
Also, you can now disable network access when the screen is off, and you can configure it for each app separately. Not only new connections are not allowed when this option is enabled, but also all existing connections are terminated when the screen goes off.
Another big change is disposal of exclusions lists. Now you can simply add an app to exceptions through the ‘Apps and Statistics’ screen. There are other changes too, and we will not list them all here. We believe the new layout is more intuitive and you will have no troubles navigating through it.
Important note: this is not yet a big redesign we plan to do in Adguard 3.0. Only the tip of the iceberg :)
[Added] $app modifier #544
This modifier will be useful for advanced users who create their own custom rules. It allows both blocking ads in a specific app and blocking ads everywhere except for that app. For example, Facebook uses same domains for both ads and useful stuff. This modifier allows to block facebook ads in other apps without breaking the Facebook app itself.
[Fixed] Detect if app targets Android N #653
Due to Android N security policy, HTTPs filtering is impossible for apps developed specifically for Android N, or other apps where user-installed certificates are not trusted. Previously that could lead to errors and app crashes. Now Adguard detects if app targets Android N and does not filter HTTPS for such apps.
From now on it will be much easier for users to add any app to exclusions. No need to go to low-level settings anymore, just open the apps screen in ‘Apps and Statistics’ and add it to exclusions from there.
Following compatibility issues were fixed:
Following apps were added to exclusions due to problems caused by filtering:
Idealo, Mountainview, Itau, Yik Yak, Box, Jet, MeetMe, MoovIt, Waze, Prisma, Grindr, Romeo Uncut, SwiftKey, S Voice, Goes, NU.nl, com.samsung.syncservice, Coursera, Astana Bank, Google Now, Yandex Navigator, Heetch, TomTom Go Mobile, Amazon apps, some banking apps
It feels like we were releasing version 2.5 just yesterday, and yet we are ready to present to you a new one: Adguard for Android v.2.6!
You will find quite a lot of improvements and new features there. Last version introduced HTTPs filtering, and in this one we made it faster by A LOT :) Now it is so much faster and more stable.
Also, our users get the ability to configure which DNS servers to use with DNS filtering, compatibility with other apps is improved, UI unergoes some tweaks, new filters are added to make filtering more comfortable... and much more!
[Added] Annoyances filter: #594
We have decided to create a new separate filter for irritating elements that disturb users or interfere with web surfing. As you may know, we already have a Social media filter that removes numerous social media widgets and different buttons – “Like”, “Share”, “Tweet” etc. (we are sure you have noticed how many of them are on certain websites). Our new filter will go further in making your surfing even more comfortable. You can learn more about it in our blog: https://blog.adguard.com/en/adguard-news/annoyances-filter.html
[Added] Custom DNS servers: #139
With Adguard you can now override system DNS settings and use any DNS servers you like. Just as with proxy settings, Android does not allow you to do it when you are on mobile data, so Adguard is your only option. To do it: go to Settings - Advanced - Low-level settings - tap pref.vpn.dns and enter preferred DNS servers addresses (one per line).
[Added] Upstream proxy settings: #51
One of the most asked questions about Adguard is “can I use it with another VPN?”. The usual answer was “no, you can’t have two VPN running together (unless you have root and use AG in proxy mode)”. We are very excited to announce that we have brought a new solution suitable for non-rooted devices. Does this allow you to use two VPNs at the same time? No, unfortunately this is still impossible. However, most popular VPN providers allow you to use proxy instead and that’s what you can do now with Adguard. For instance, if you are a PIA VPN user, you now can setup Adguard to use their SOCKS5 proxy. Learn more about it here (scroll down until you see “SOCKS5 proxy” link). You may want to use TOR along with Adguard and it is also possible now! Here is a short instruction on how to setup Adguard to work with Orbot: Proxy with Tor.
One more thing worth noticing is that Adguard is currently the only way to use proxy when you are on mobile data. Otherwise Android just does not provide such possibility.
[Added] New low-level setting allowing to block IPv6 traffic in Proxy+Auto filtering mode: #601
It appears that in Proxy+Auto mode Adguard cannot filter IPv6 traffic. As a temporary solution we’ve introduced new low-level setting “pref.proxy.block.ipv6” allowing to block IPv6 traffic to public networks. It is disabled by default, so if you have IPv6 offered by your ISP, you may want to enable it.
[Added] Low level switch for AG to dump HTTP/HTTPs content to a file: #502
This switch will be very useful to filters developers and enthusiasts. Adguard saves HTTP(s) requests in a HAR (http archive) v1.2 format which can be easily analyzed with a Fiddler app: #502
[Improved] HTTPs filtering performance: #501
Another popular question was about download speed drop over HTTPs. HTTPs filtering is a heavy operation, so that was expected. What was unexpected to us is that some services like Google Play may download apps over HTTPs. So, we have greatly optimized the filtering speed. On our test device it has showed an increase in 5-10 times!
Not so long ago we announced a soon-to-come release of new Adguard for Android version, and we keep our promise by pushing out Adguard 2.5 today. Lots of new features and bugfixes are awaiting you, and some of them are HUGE. If you keep track of our blog, or forum, you already know that the killer news of this release is adding the HTTPS filtering. And yes, that means no more ads in YouTube, Facebook or Twitter - you name it. But there are other reasons to get excited besides it. Read on to find out what are they.
Previously, ads which are loaded using HTTPS were ignored. Now Adguard can filter HTTPS protocol, which means that all such ads will be blocked. And these ads appear at many websites and apps - we already mentioned some of them above. To enable HTTPS filtering, simply go to Adguard settings -> HTTPS filtering. Put checkmark besides 'Install certificate' checbox to install certificate, then enable 'Filter HTTPS connections' - all is ready now.
The upside of this is obviously huge, but there are a couple of drawbacks as well:
1. You will need to set a password or a lockscreen pattern. This is a system requirement with no workarounds.
2. You will get a 'Network may be monitored' notification after enabling HTTPS filtering and after each device reboot. This notification, however, can be swiped away.
HTTPS filtering works in two modes. By default, Adguard will filter all HTTPS connections to all domains, except for domains from the whitelist. The other mode allows you to filter HTTPS connections to the domains from the blacklist only. We recommend blacklist mode for those with older smartphones and tablets, as filtering all HTTPS connections can possibly cause performance drop.
Privacy and security
From the beginning, the main goal of HTTPS was to secure your data that you transfer via network. We take privacy and security issues very seriously, and that's why we spent a lot of time to make sure you will not lose HTTPS advantages while filtering HTTPS protocol.
1. Your network traffic remains encrypted (because all the filtering happens inside your device).
2. Adguard checks server certificates by itself, and with any hint of danger filtering of this connection will be ceased.
3. Adguard is not affected by any SSL vulnerabilities which year 2015 was so rich of (it can be verified on SSL labs).
4. By default Adguard doesn't filter connections with known bank domains and other websites with personal info. Since this beta we fixed a lot of bugs concerning HTTPS filtering.
For those who want full control and maximum security, blacklist filtering mode will probably suit more than default whitelist mode.
[Changed] In Android 6.0 Adguard now automatically pauses protection in the battery saver mode (unless battery optimization is disabled for Adguard app) #247
We feel this is an important change. When Android is switched to power saving mode, all apps are cut off from internet. But Adguard VPN was still alive and receiving all the packets from these apps. Now we simply disable protection for the duration of power saving mode. When battery saver mode is off, we automatically enable protection back.
Added various language-specific and other filters:
Added localizations to various languages:
[Added] Added popular filter subscriptions: #0
List of added filter subscriptions:
* EasyList China
* EasyList Czech and Slovak
* EasyList Hebrew
* EasyList Italy
* Liste AR
* Liste FR
* ABP Japanese Filters
* Adblock polskie reguły
[Added] $generichide modifier support: #4
[Added] $genericblock modifier support: #3
[Changed] Use keyboard settings to detect default language-specific filters: #0
[Changed] Improved $popup rules: #7
[Fixed] A bug with HTML filtering rules - void elements never removed: #4
[Fixed] An issue with "base url": #2
[Fixed] Rules with $elemhide modifier now applied to "Documents" only: #1
[Added] New "Notification Icon" setting option: "Notification without icon": #2
So now we now have 4 options:
1. Default icon. Icon and notification are always visible.
2. Colored icon (only in Android 4.X). Icon and notification are always visible.
3. Notification without icon. Icon is not visible. Permanent notification is visible, but it has low priority, so it is semi-transparent and placed below all other notifications.
4 None. No icon, no notification.
[Changed] Make "Protection paused" a permanent notification: #1
This change should help with #3. When Adguard pauses protection, sometimes Android may kill it's process and then do not bring it back.
[Changed] Add a description text for each filter: #9
[Changed] Change Mb to MB in firewall data statistics: #0
[Changed] "Protection paused" notification should not have high priority in Android 4.X: #5
[Changed] Changed the way Adguard checks domain: #2
[Changed] Adguard now checks if IP address is reachable before redirecting connection to a proxy: #7
[Fixed] Crash when system call is interrupted: #0
[Fixed] "Filter DNS requests" feature does not work with mobile connection: #1
We have improved "Filter DNS requests" feature, now it is much more reliable and works for both Wi-Fi and Mobile connection. This feature may drastically improve the battery usage, so I recommend trying it.
[Changed] Add Link Bubble Browser to the browsers list: #7
[Fixed] Tethering/hotspot is falsely detected (MIUI, Zenfone2): #8
[Fixed] Fixed an issue with filtering Boat Browser and Dolphin Browser with add-ons installed: #7
[Fixed] Viber app compatiblity issues: #0
[Fixed] Added Firefox Nightly to the browsers list: #6
[Fixed] Added RT Software Studio's Download Manager to the browsers list: #9
[Fixed] Added Yandex Browser Alpha to the browsers list: #8
[Fixed] Periscope app incompatibility: #5
[Fixed] Add sberbank app to net exclusions: #9
[Changed] Compress request body when sending request to support: #6
[Changed] Improve release notes layout: #0
[Fixed] Add sberbank app to net exclusions: #9
[Fixed] Adguard breaks WebSocket protocol: #8
[Fixed] Adguard requests to a backend server has wrong User-Agent field: #1
[Fixed] Always return status=500 for blocked requests: #6
[Fixed] BOOT_COMPLETED Intent is not received at “Restart” or “Reboot”: #3
[Fixed] Critical Error: Deadlock caused by slow write operations #8
[Fixed] Download or upload of large files may be broken: java.net.SocketTimeoutException: #4
[Fixed] Foreground check does not work in Android 5.1.1+: #4
[Fixed] Random timeout error while downloading large files: #5
[Fixed] T-Mobile Wi-Fi calling issue: #3
[Fixed] UDP connection may be closed before it is actually established: #5
[Fixed] Wi-Fi direct does not work with Adguard on Samsung devices: #7
[Fixed] Wildcard's "*" character does not match a new line: #3
Patch for Adguard 2.1. This patch fixes a few major bugs discovered in the previous release.
Adguard will show you which apps consume resources at the moment, and demonstrate the used traffic for day, month or all-time.
You can discuss the latest version in our blog: here.