Menu
EN

AdGuard for Android – Release – AdGuard versions

AdGuard for Android 4.6.5
Release date: November 12, 2024
Minor improvements to the statistics module.
AdGuard for Android 4.6.4
Release date: November 4, 2024
If this release were a UFC fighter, it would go by the name “The Bugfixer” because it is all about squashing bugs. Let’s break down what we’ve accomplished here.

DNS bug

We’ve tackled a particularly eye-twitching bug that caused DNS — and, as a result, the Internet — to randomly fail when switching networks. It took some detective work on our part since the issue was unpredictable and only impacted a small number of users. But hey, no one should be left without DNS protection!

Battery drain bug

Another irritating bug we discovered during beta testing: incorrect statistics calculations were leading to excessive battery drain. The system code was unable to calculate the date necessary for accurate statistics below a certain value. Thankfully, we’ve managed to work around this odd behavior in the system code, and now the stats are calculated correctly. They also now load faster and take up less RAM.
This issue seemed to affect users on specific versions of Android. If you were using the nightly or beta version of AdGuard and ran into this problem, we recommend updating to the stable release.

Other fixes

A number of bug fixes and improvements come with the latest version of the CoreLibs, along with improved filtering quality — you can see the details in the changelog below.

Changelog

Fixes

AdGuard fails to export logs and settings due to statistics size #5458
AdGuard crashes when Recent activity log is opened in split screen #5481
AdGuard consumes too much battery since v4.6 #5460

CoreLibs (Filtering engine)

CoreLibs updated to v1.16.44

Improvements

Enable post-quantum cryptography when it’s used by the filtered app #1916
Support strict-first-party and strict-third-party modifier of uBO #1874
Added possibility to allowlist scriptlets #1862
Support redirection to the destination without tracking services as middleman #1557

Fixes

AdGuard content script is blocked by CSP on uber.com #1903
Login is broken in Firefox on sony.de #1867
GM_xmlhttpRequest doesn’t support the Referer header #1899 *AdGuard overrides User-Agent changes made by the browser, which reduces privacy #1910

Scriptlets (JavaScript enhancement for filtering rules)

Scriptlets updated to v1.11.27

Improvements

set-local-storage-item — added values allowed and denied #445
abort-on-stack-trace — support line number for inlineScript and injectedScript #439
set cookie — added values checked and unchecked #444
trusted-click-element — added reload option #301
Added new scriptlet trusted-set-session-storage-item #426
set-cookie — added essential and nonessential to supported values #436
trusted-set-cookie and trusted-set-cookie-reload — added $currentISODate$ #435
set-cookie — added more supported values #433
set-local-storage-item — added more supported values #429
Improve logging in scriptlets #411
Show cosmetic rules in the filtering log #180
Added new scriptlet trusted-dispatch-event #382
Added new scriptlet trusted-replace-outbound-text #410
Added ability to validate redirects for AdGuard compatibility without the full rule text #420
trusted-click-element — added support for closed ShadowRoot #423
trusted-click-element — added an ability to click an element containing a given text #409

Fixes

log-on-stack-trace — player is broken on deltabit.co #384
trusted-create-element — when using the cleanupDelayMs parameter, a removed element is re-added and removed several times #434
AdGuard for Android 4.6.3
Release date: September 9, 2024
Here’s an additional technical update following the previous one. In it, we’ve fixed bugs and kept working on the app stability.
AdGuard for Android 4.6.2
Release date: August 21, 2024
Have you ever noticed how the app crashes even when you have a freshly updated version? Well, notice no more! This hotfix solves that problem. From now on, just pure ad blocking all the way.
AdGuard for Android 4.6.1
Release date: July 26, 2024
Filtering engines have been hit by enemy bugs, but AdGuard is stronger than that. With this hotfix, updated libraries bring you a cleaner and safer web.
AdGuard for Android 4.6
Release date: July 23, 2024
As Vince Lombardi says, “Perfection is not attainable, but if we chase perfection we can catch excellence.” We do as he says, and try our best to make every update better. Today we are happy to release the new version of AdGuard for Android. Faster, stronger, and more efficient. Let’s take a look at the major changes.
With the updated filtering engine CoreLibs, we have been able to implement many new features that will improve your filtering experience. First of all, we’ve increased HTTPS filtering speed. Second, there are some handy enhancements for our filter developers and advanced users. We’ve added support for urltransform and xmlprune modifiers. Now even more distracting elements on a page will be blocked.
We have made some UI improvements to make our app more user friendly. Some Xiaomi users faced difficulties when trying to optimize battery usage. We thought about it and decided to add the guide.

Our developers didn’t rest on their laurels, so they also updated DnsLibs andUserscriptsWrapper and fixed a lot of bugs to make the app more stable.

Changelog

Fixes

AdGuard YouTube player cannot open YouTube links or play the playlist #5348
App crashes when tapping the protection notification after quitting AdGuard #5366
Translations do not fit in the field #5324
The warning text “Not routed through AdGuard” does not disappear after resetting settings to default #5340

CoreLibs (filtering engine)

CoreLibs updated to v1.15.59

Improvements

Added $urltransform (trusted) modifier support #1364
Added $xmlprune modifier support #473
Added mobile browsers to the list of user agents that support :has() natively #1870
Allowed ECDSA ciphers on the local side #360
Set up Sec-Fetch-Dest header: fencedframe #1853
Support uBO's /regex/ cosmetic rule format #1844

Fixes

Adblock syntax rules with FQDN do not work #210
AdGuard and FTP connection error #1864
Userscript XHR error #1876
$all modifier does not work with non-domain-like URL part #1860
URL blocking rules do not work correctly with the $generichide modifier #1857

DnsLibs (DNS filtering engine)

DnsLibs updated to v2.5.33

UserscriptsWrapper

UserscriptsWrapper updated to v1.2.24

Fixes

vk-metabot.user.js does not work via AdGuard #1871

ContentScript

ContentScript updated to v2.0.6

Fixes

Element hiding rules ## and #$# do not apply to the tv.rambler.ru #1865
AdGuard for Android 4.5
Release date: June 5, 2024
This update brings our YouTube player’s usability to a whole new level: we added background playback, recommended videos, quality settings, and much more. Not so unskippable now, are you, ads? On top of that, this version includes some nice fixes for overall app performance, including the Android TV version.

A ton of improvements for AdGuard’s YouTube player

Just look at what’s available now:
Change video quality, playback speed, and subtitle settings using the gear ⚙ button
AG player video settings
Picture-in-picture mode is now supported, which means you can shrink the video to a small window and keep playing it in the background while using other apps. Great for such things as listening to music or podcasts
Picture-in-picture mode
View recommendations at the end of the video, while paused, or by tapping the lower right corner of the player (availability depends on the video)
AG player recommended videos
Double-tap the right or left side of the screen to skip 10 seconds forward or back correspondingly
Quick reminder: to launch the AdGuard player, choose any video in the YouTube app, tap Share and select AdGuard Player (it’s likely that you will need to scroll right and tap More first).
Note: AdGuard player is based on the internal web browser that opens YouTube and has ad-blocking functionality built in. Therefore, the functioning and availability of its features depends on the web version of YouTube.

Changelog

Improvements

Focus now stays in the same place after opening the left-side menu of AdGuard for Android TV and closing it back #5271

Fixes

DNS protection settings fail to reset to default #5322
"Show DevTools on the main screen" toggle starts blinking after interacting with other toggles on the same screen #5332
Language-specific filter “Other, Other” #5232
Failed to reset to default the “Show DevTools on the main screen” option in Low-level settings #5331
AdGuard for Android TV crashes when you try to add a custom DNS server using a link with "adguard:add_dns_server?address=" prefix #5264
AdGuard for Android 4.4.1
Release date: May 23, 2024
This is a technical update aimed to increase the app stability and fix minor bugs.
AdGuard for Android 4.4
Release date: May 17, 2024
Improved Firewall functionality and on-the-fly DoH filtering are the highlights of AdGuard v4.4 for Android. After extensive testing, we are ready to introduce the new version to you.

Firewall on fire

We like to think that we make the Internet cleaner and more enjoyable for users. But we are not ashamed to admit that sometimes we can send annoying notifications ourselves. Users have reported that they find using Firewall inconvenient: there are just too many notifications. As a result, people are turning them off for good in the system preferences.
In response, we have improved Firewall functionality. Now you can customize and turn off firewall notifications for all applications or specific ones. Don’t want to get notifications about Chrome connections? Open the notification shade, tap a notification about Chrome, and then tap Mute. All Firewall notifications for this app will be disabled.

Alternatively, you can go to ProtectionFirewallNotificationsand toggle off notifications for individual apps.

DoH requests be flying

With the updated filtering engine, CoreLibs, we can implement on-the-fly DNS-over-HTTPS (DoH) connection filtering. Our desktop apps have already gone this route and it seems to work fine. Why is this feature even necessary?
Before, if a user enabled DoH in their browser but not in AdGuard, we had to filter requests directly in the browser and send them to the unencrypted system DNS, which decreased security. Now, with on-the-fly DoH connection filtering, we can filter DNS requests in the browser without sending them to an unencrypted server.
You can find the new feature in SettingsGeneralAdvancedLow-level settingsFilter secure DNS.

We also fixed some minor bugs and updated UserscriptsWrapper and DnsLibs.

Changelog

Improvements

Enable HTTPS filtering on the Chromite browser for free #4997
Improved Developer Tools section #5173
Add the "Nothing to export" snack when trying to export rules with empty User rules list #5176
Added com.klook app to default HTTPS filtering exclusions #5143
Include com.nekki.shadowfightarena to QUIC bypass packages by default #5158

Fixes

The license key is not hidden #4496
Fixed the translation on it locale #5180
Autorun doesn’t work after rebooting Chromecast and Sony TV #5156
Large battery consumption #4960
Cache size grows quickly #5125
App crashes when making changes on the Userscript state and returning back #5131
App crashes when choosing the Indonesian language #5236
DNS server settings reset after resetting the settings in DNS filters tab #5142
Dialog about the certificate installation failure does not disappear after successful installation #5194
Downloading the application update takes more than 400 mAh of battery capacity #5259
Duplicates can be added to Websites allowlist using case difference #5037
Error while exporting settings #5069
Background images are blocked on com.opera.browser #5096
Meross device pairing error (com.meross.meross) #4989
Recent activity of the selected company with two components is not displayed #5067
Remove (.) character for all DNS entries #4824
Scroll area issue on the Browsing security screen #5195
Scrollbar thumb goes behind the bottom menu in Recent activity #4901
Snacks close due to minimizing the application #5018
Some custom filter properties don’t update properly #5171
Statistic cards on main screen doesn't fill full screen width #5118
The popups are displayed in the system language, while the whole application is in English #5168
The radio button state is not imported for the Bootstrap upstreams option #5239
Update loader is not working correctly #5028
Disabling via the notification shade will auto enable itself upon re-opening the app #5146
With AdGuard protection enabled, the app reports that there is no Internet connection #5209
Santander and Sainsburys Bank apps are breaking with HTTPS filtering on #5058
Update progress bar has wrong colors #5308

CoreLibs (Filtering engine) updated to v1.14.59 #5316

Improvements

Added on-the-fly filtering of DoH connections #198
Added GM.xmlhttpRequest as alias of GM_xmlhttpRequest #1785
Indicate that outbound proxy is used in the request processed event #1385
Added support for passing host to outbound proxy #1386
Added Firefox 121.0+ to the list of user agents, that natively support :has() #1840
Added ECH parameters from intercepted DNS HTTPS queries #1794
Improved HTML filtering performance #1855
Added an option to use | as a separator in $permissions #1850

Fixes

Apply $permissions only to document #1856
Cannot parse QUIC ClientHello split into two packets #1861
VOT script doesn’t work in Google chrome #1665
Request with Authorization header is not redirected #1851
Support anti-DPI feature for Korea Telecom #1789
Cookie rules with [ and ] in the name are invalid #1843
Cosmetic rules are not applied in some cases when AdGuard works alongside AdGuard VPN browser extension #1791
One of the subdomains is not filtered due to different site certificates #1839
$all modifier does not work correctly #1842
mall.sk content script is not injected #1834
Blocking regex rule that has escaped slash in a character class doesn’t work #1831
Content script is not injected if there is a tag (with embed attribute) before doctype declaration #1825
$path modifier doesn’t work with query params #1817
$removeparam on url with port redirects to url without port #1818
android-hilfe.de brakes website #1800
Cannot connect to wiki.cemu.info securely #1821
AdGuard systematically crashes and freezes #1880

Scriptlets (JavaScript enhancement for filtering rules) updated to v1.10.25

Improvements

Improved google-analytics, added ga.q property #355
Improved google-ima3, added OmidVerificationVendor property #353
Added compatibility with uBO's set-cookie scriptlet #332
Added new scriptlet href-sanitizer #327
Added new scriptlet json-prune-fetch-response #361
Added new scriptlet json-prune-xhr-response #360
Added new scriptlet trusted-suppress-native-method #383
Added new scriptlet no-protected-audience #395
Improved set-cookie, increased a possible numeric value #388
Improved trusted-click-element, added support for finding selectors in shadowRoot #323
Use some redirects resources as scriptlets as well #300
Added possibility to allowlist scriptlets #377
Improved prevent-fetch, added cors responseType #394
Improved set-cookie, added domain parameter #389
Added new scriptlet call-nothrow.js #333
Added new scriptlet spoof-css #317
Added new scriptlet trusted-create-element #278
Improved set-cookie, added more supported values #379
Added new scriptlet trusted-set-attr #281

Fixes

Fixed set-constant — setProxyTrap() #403
Fixed set-cookie, do not encode a cookie name #408
Fixed set-local-storage-item conversion, $remove$ param #404

UserscriptsWrapper updated to v1.2.23

DnsLibs (DNS filtering engine) updated to v2.5.25 #5306

Improvements

Allowed specifying tcp-only and udp-only DNS upstreams #208
Support passing hostname to outbound proxy instead of bootstrapping #197
Improved handling of HTTPS RRType #215
Restrict host normalization to DoH only #219

Fixes

Cannot use DoH DNS server that use HTTP/1.1 after updating to v4.3 #216
Use Happy Eyeballs for IPv4/IPv6 in DoH #217
Adblock syntax rules with FQDN doesn’t work #210
AdGuard for Android 4.3.1
Release date: December 27, 2023
Sometimes a release is so significant and exciting that it’s easy for a bug to slip through. The only thing left to do is to release a new version as quickly as possible. In this hotfix, we’ve fixed a major issue: the app would crash when HTTPS proxy is enabled in a browser. We also made sure that the $all modifier now works correctly, updated the CoreLibs and DnsLibs — our beloved filtering engines — and added a few improvements along the way. What else is there to say? Update and see for yourself!

Changelog

Fixes

AdGuard crashes when HTTPS proxy is set in a browser #5130
“Stay always protected” card re-appears on Xiaomi devices #5126

CoreLibs (Filtering engine)

CoreLibs updated to v1.13.115 #5124
$all modifier does not work correctly #1842

DnsLibs (DNS filtering engine)

DnsLibs updated to v2.4.37 #5123
AdGuard for Android 4.3
Release date: December 21, 2023
AdGuard v4.3 for Android brings you something not only special, but unprecedented. It’s the same AdGuard you know and love, but now with a TV-sized twist – and we mean that quite literally: we’re glad to introduce the support for Android TV! Important updates and a new Developer tools section are also here to enhance your user experience with our app.

Android TV support

AdGuard for Android TV
To provide full support for Android TV, we’ve developed a version of AdGuard for Android with the most essential features to enhance your browsing experience and content filtering on your TV. The new design, fully adapted for Android TV, includes:
Adapted onboarding
Home screen with statistics
Adapted Protection screen
Adapted settings
App management
DNS protection
DNS protection is a key feature on AdGuard for Android TV. Securing DNS traffic through encryption adds an extra layer of security and privacy to your browsing experience. With this update, you can now benefit from this safety also on the big screen. DNS-over-HTTPS is selected by default, but you can add your own server if a different protocol is needed.
Hold on to your remote, what you are about to experience is a brand new app! You can find the detailed instructions on how to install AdGuard for Android TV in our blog post.
Note: You’ll need a license to use AdGuard for Android TV. But you can also try it for free — we offer a 7-day trial period.

Developer tools

We invite our advanced users and filter developers who interact very actively with the app to explore our new Developer tools, a specialized section designed for quick navigation and switching between features. There you can quickly enable or disable custom filters, access logs, enable recording of different logs, and more. This feature can be enabled in Low-level settings.

CoreLibs and DnsLibs updates

The recent CoreLibs v1.13 update boosts your browsing experience with improved HTML filtering, while the update of DnsLibs to v2.4 makes your connection more secure with support for HTTP basic authentication.

Changelog

Features

Fulguris added to the list of browsers #4969
Added a list of Russian VoWiFi IPs to exclude #4992
Android TV OS support added #3597
Added a button to reset DNS Protection setting #4735
Added support for Macedonian (mk) to AdGuard for Android #5086
HTTPS filtering for com.kantarworldpanel.shoppix disabled by default #4706
Click area for back arrow buttons increased #4789
Sorting order for User rules improved #4779
Parse 'Title' metadata from filter list subscriptions #4760
Operating System name + version sent to ReportsWebApp #5025

Fixes

"Slow work" notification disappears when enabling debug logging level #5017
Product type and AdGuard version are incorrectly detected in the "Report incorrect blocking" form #4895
Bootstrap upstreams setting doesn't reset after resetting low-level settings #4907
Deleting website from blocklist doesn't work properly #4902
In the free version, the status “Disabled Browsing security” appears as “Updated” when checking for updates #4844
Filters can be found in the search only using English #5026
Firewall works when it's disabled and there is no app usage access #5012
Google Play: com.gpn.azs app doesn't work #4845
Google Play: de.dkb.portalapp incorrect blocking #3734
Importing settings with another language doesn't work correctly #5007
Impossible to open and hear vocal messages in "Orange Téléphone" app #4777
In the snack that appears in all settings, "Undo" is not translated into other languages #4880
In tracking protection blinking at functions when pressing the switch #4879
Incorrect tab is highlighted when redirected to the protection section by long tapping the icon #4860
Infinite loader after tap on a snack from the Website allowlist/blocklist #4843
It is possible to make a two-line rule via the clipboard #5009
Keyboard lags and text cannot be entered in the search field after collapsing the top of the screen #4979
License expiry date is displayed incorrectly #4856
Logs upload changes login and password for Proxy server #4884
Long option names do not fit in the rule creation dialog #4764
Non-relevant results are also displayed on the "Language-specific ad blocking" screen #4891
Redirect from the assistant highlights the incorrect tab in the bar #5001
The "Add userscript" popup does not appear when redirected to AdGuard by the userscript link #4913
The cursor position in the search field resets after collapsing the top of the screen #4892
The loader is displayed on the search field on the Recent activity screen #5035
The same icon is used for unrelated purposes #4737
Unable to send a bug report when the checkbox "Send app logs..." is marked #4894
When adding a DNS filter from the system using a file, the input field is grayed out #4882
When adding custom DNS filters or Userscripts, the "Browse" button is grayed out #4850
When changing the setting of the disabled option the protection is restarted #4762
When importing DNS user rules containing empty lines, these lines are added #4888
When quickly switching switches in Firewall rules, the rule list lines glitch #4885
Wi-Fi calling issue on Xiaomi: add com.qualcomm.qti.cne to routing exclusions #5029
Clearing the statistics doesn't clear apps and companies sections only resets their counters to zero #4748
Impossible to log in to the ONECTA-Daikin app with AdGuard enabled #4775

DnsLibs (DNS filtering engine)

DnsLibs updated to v2.4.16

On-the-fly filtering of DoH connections #198

DnsLibs updated to v2.4.0

​* Basic auth for DoH endpoints #189
Possible DoS attack against the local DNS proxy when it’s using a plain DNS upstream #202

DnsLibs updated to v2.3.4

127.0.0.1 local is incorrectly interpreted as being for all .local address, breaking mDNS #207
Allow C# comments in domain name rules #196
DoH tries to use stale connection too much time #200
Properly filter type=HTTPS requests #199

CoreLibs (Filtering engine)

CoreLibs updated to v1.13.98

Add !#else pre-processor directive support #1806
Add $extension modifier disabling specific userscript #1706
Adopt new rule priority scheme #1768
Change sec-ch-ua headers to match user-agent when Stealth Mode is active #1764
Improve HTML filtering performance #1772
Improve HTML filtering rules $$ -- allow CSS-like selectors #94
Support for cap_html_filtering condition #1758
$denyallow does not allow blocking documents #1809
$stealth exceptions do not work on the TCP stack level where we block STUN/TURN #1737
Images are not displayed in Edge Bing Chat #1744
The 网盘直链下载助手 user script is not working with AdGuard #1780
Websites using SXG have no cosmetic filtering when opening from Google search #1812
socks5 proxy not working with AdGuard v4.0 #4812
Content script is not injected into elements loaded in object tag #1769
Detect website locale based on HTML "lang" attribute and language request HTTP headers #1736
Increase limit for $replace rules #1802
Moving certificate is not an option anymore #277
Properly use ECH retry_configs #1793
Support anti-DPI feature for Korea Telecom #1789
UDP timeout is too small in TcpIpStack #1796
AdGuard for Android 4.2
Release date: October 23, 2023

AdGuard Dynamics

Get ready for a dynamic experience as AdGuard for Android makes its way to your screens with exciting new features! Now our app not only has dynamic icons, it also has a dynamic theme.
If you enable this option in the settings, the AdGuard app interface and icon will match the color of your smartphone interface.
Please note that these features are only available on Android devices running version 12 or higher.

HTTP/3 filtering support #487

AdGuard now not only filters HTTP/1.1 and HTTP/2 traffic. In this release, we have added experimental support for HTTP/3 filtering. The HTTP/3 protocol, powered by the QUIC network protocol, provides better privacy and security, as well as a more stable and faster Internet connection. By enabling HTTP/3 filtering, you can take advantage of the QUIC protocol and effectively block ads and trackers.
To enable HTTP/3 filtering, go to Settings → General → Advanced → Low-level settings → Filter HTTP/3 and toggle the switch to the right.

Support for two HTTPS certificates

By implementing two HTTPS certificates, we have fixed an issue with HTTPS filtering in Chrome 100 and above on rooted devices. While the certificate in the system store will be responsible for filtering in most apps, the certificate in the user store will allow AdGuard to filter HTTPS traffic in Chromium-based browsers.
Installing certificates has also become easier: we’ve added step-by-step instructions.
To install the second certificate, go to Settings → Filtering → Network → HTTPS filtering → Security сertificates and follow the instructions.

Our filters have become even more powerful and we have also fixed a bunch of bugs to ensure stable performance of the app. Hurry up to update!

Changelog

Features

Enabled HTTPS filtering by default for the Opera browser #4972

Fixes

Exclude INETCOM.TV from routing by default #4723
AdGuard cannot start protection due to HTTPS certificate expiration #4896
Auto-update of custom filters doesn't work #4961
AdGuard logs users out of their accounts #4959
AdGuard notifications cause the locked screen to turn on while in sleep mode #4778
HTTPS filtering is disabled for the app after relaunching AdGuard if the certificate has been moved to the system storage #5008
Shadow around the main switch is missing on Android 8 #4858
Some elements are not announced correctly by TalkBack #4809
Switch sometimes disappears for 10-30 seconds, protection restarts for a long time #4862
The space at the bottom of the "How to block ads on YouTube" screen is missing on devices with small screens #4866
If the app is set to Traditional Chinese, the filters are displayed in Simplified Chinese after the update #4949
Switching between firewall tabs causes AdGuard to crash #4999
Importing settings with a different language does not immediately change the language #4984
License is not imported when importing settings #4985
Non-working button in the snack about disabled notifications #5002
On the ‘Why filter HTTPS traffic’ screen, pressing Next again cancels the previous action #4993
A cross button doesn't remove the text in the search bar on the Language-specific ad blocking screen #4978
The text of imported/exported settings does not fit in the dialog box #4981

CoreLibs (Filtering engine) updated to v1.12.80 #4966

Improvements

User Agent stripping Improved #1345
TCP/IP: Added new reject mode - ICMP administratively prohibited #1774
Added support for uBO media queries #1707

Fixes

Connection is terminated by timer in have-result state #1180
A few seconds delay when using ipTIME home routers #1756
AdGuard slows down web page load time #1522
Hide referrer with "Hide your search queries" option enabled when request is made by click #1766
SOCKS5 proxy does not work with AdGuard 4.0 #4812
Enabled ECH GREASE when ECH is enabled #1781
Fixed a bug with removing HTTP headers when decrypting book text #1750
Preparation for XPC #1675
DNS fallback helper sometimes returns 127.0.0.1 instead of provider servers #1687
UDP timeout is too small in TcpIpStack #1796

DnsLibs (DNS filtering engine) updated to v2.2.24 #4953

Fixes

DoH tries to use stale connection for too long #200
CoreDNS DoQ server cannot be used by DnsLibs #204
sdns:// cert pinning is incorrect #205

Important for filter maintainers

Added $referral-policy modifier #135
Added $method modifier for basic rules #1713
Allowed $stealth rules with an empty pattern #1762
Added $to modifier #1714
$jsonprune, $replace, and $hls do not work with non-GET/POST HTTP methods #1743
Exception rules interfere with each other #1749
$path modifier does not work on path market.yandex.ru #1726
$jsonprune modifier should be able to handle quotes for jsonp #1734
Consider :has(), :not(), and :is() as a standard pseudo-class if ExtendedCss usage is not forced by the #?# rule marker #1683
Cosmetic rules do not work at mypikpak.com #1767
AdGuard for Android 4.1
Release date: July 26, 2023
With this release, we have made a number of improvements to the UI and internal workings of our app. For example, we've reworked the YouTube player to support all video formats, including Live Streams and Shorts. Actually, it's based on the internal web browser that opens YouTube and has ad-blocking functionality built in. Take a look at the Protection section for a detailed description of this feature. We also made it easier for you to access App management. It's now just one tap away via the button we've added to the tab bar menu at the bottom.

Changelog

Features

Added com.homeretailgroup.myargoscard and related domains to exclusions #3480
Added support for com.quark.browser and com.qihoo.contents #3673
Easier access to App management #4408

Fixes

AdGuard player does not play a YouTube video when tapping the Share button in a browser #3932
Improved the behavior of bug report and feature request screens to prevent duplicates #4814
Reset to default in General settings doesn't work properly #4719
Added com.apple.movetoios to exclusions #3676
AdGuard v4.0 for Android frequently restarts protection #4707
When trying to go back after submitting a bug report, an infinite loader is displayed #4792
After updating the filters, the updated filters are displayed in a row #4790
Chrome Remote Desktop does not work unless filtering for the app is turned off #4036
Added pl.tvn.player to filtering exclusions #3646
Incorrect transition from the Use license key tab when entering a blocked key #4562
Switching to another tab via snack does not work #4502
On a small display, the buttons overlap the text on the Userscript screen #4750
The com.rapido.passenger app is not working #3976
When checking for updates, the Browsing Security Database should report "Up to date" if no update has been installed #4725
Added com.inpost.fresh to filtering exclusions #3979

Design

Improved the technical info dialog #4717
Improved the app's language screen #4718

Versions

Upgraded CoreLibs to v1.11.113
Upgraded DnsLibs to v2.2.14

DnsLibs

Added lb._dns-sd._udp.*.in-addr.arpa to the default list of exclusions #194
$denyallow rules are not validated until additional modifiers are added #191
Fallback upstream is not enabled for invalid plain DNS upstream #4820
For IP-based DoT/DoQ connections, IP address is set for SNI #186
Overall timeout is bigger when multiple upstreams are added #105
Added XPC support #174
Added the dnsproxy_settings::request_timeout setting instead of the upstream-specific ones #163
DNS-over-QUIC upstream does not respect resolved_ip #185
Traffic is routed from DNS 127.0.0.1 to an outbound proxy server #195
Added SPKI fingerprint verification feature #172
AdGuard for Android 4.0
Release date: June 13, 2023
Finally, we are ready to reveal the result of titanic efforts! Let’s take a closer look at AdGuard v4.0 for Android and talk about what has changed since version 3.6.

Total reengineering

We've overhauled the entire app, meticulously rewriting every line of code from the ground up. This transformative revamp has resulted in an app that's not only faster, but also smoother than ever before.

Complete redesign

We've reimagined the design to make the app interface simpler and bring core features to the forefront. Now, to turn on Ad blocking, Tracking protection, Annoyance blocking, or DNS protection along with their filters, you can just tap the corresponding icon above the main switch.
We've also added a separate Protection section. Accessible by tapping the shield icon at the bottom of the screen, this section gives you even more control. Apart from the above-mentioned “core” features, this section allows you to manage Firewall, Browsing Security, and even AdGuard VPN. From the Protection screen, you can turn these modules on or off as you wish and access their settings.

Firewall

We've uncovered an exciting feature from the depths of AdGuard for Android — Firewall – and given it a full-fledged, independent status. With it, you are the master of your domain, deciding which apps can indulge in mobile data or Wi-Fi when the screen is off. It is designed to keep you in the know with real-time notifications of app activities, so nothing escapes your attention.
And for those lightning-fast modifications, head over to the Quick actions section where updating firewall rules has never been simpler. With Firewall, you can also block apps from accessing the Internet while in roaming, saving your precious megabytes abroad.

Detailed statistics

A dedicated tab offers comprehensive statistics about all apps, companies, and domains. Wondering which company's requests are blocked most often? Which apps are trying to send your data and to whom? You can quickly identify and block anything suspicious.

Integration with AdGuard VPN

As we wrote above, Integrated mode with AdGuard VPN was introduced in AdGuard v3.5 for Android. Until then, users had to go through seven circles of hell to get our ad blocker and VPN to work simultaneously. All because normally two different network-filtering apps can’t work alongside each other on Android.
With the release of AdGuard v4.0 for Android, Integrated mode has become more stable than ever. Previously, each time AdGuard or AdGuard VPN was updated or reinstalled, Integrated mode had to be reconfigured. Now, you configure it once and it will withstand updates and reinstalls while maintaining the integration. In addition, more frequent information exchange between AdGuard Ad Blocker and AdGuard VPN enhances the stability of Integrated mode without affecting performance.
Changes in Integrated mode are synced between AdGuard v4.0 for Android and AdGuard VPN v2.3 for Android. Be sure to update both apps to the latest versions to enjoy their most stable and smooth simultaneous operation in Integrated mode.

Selective app proxying

Before AdGuard v4.0 for Android, you could route all of your web traffic through a specified proxy server. With the Apps operating through proxy feature, located at Settings → Filtering → Network → Proxy, you can now choose which apps will work through your proxy. In addition, Apps operating through proxy allows you to specify which apps will route their traffic through AdGuard VPN when operating in Integrated mode.

Root access perks

For all the tech enthusiasts out there, the term “root” is no stranger to you. Rooting is essentially unlocking your device to gain more privileged control. If your Android device is rooted, AdGuard v4.0 for Android offers you unprecedented capabilities beyond any previous version of AdGuard Ad Blocker.
Traditionally, AdGuard routes network traffic to its CoreLibs filtering engine by establishing a local VPN. But now, with root access, you can switch AdGuard to the Automatic proxy mode. Just navigate to Settings → Filtering → Network → Routing mode and switch to Automatic proxy. This action takes local VPN out of the picture and instead configures iptables to accomplish the same goals. And there are several benefits to this change.
Firstly, AdGuard is now able to apply DNS filtering to IPv6 requests, something that was not possible before. Secondly, we've ironed out a few issues that hampered AdGuard from accurately associating web requests with their respective apps. This fine-tuning will enhance the performance of Firewall, Filtering log, and so forth. For those of you with rooted devices, this AdGuard update takes your control and customization to a whole new level!

Low-level settings rework

Diving into the realm of Low-level settings? Found under Settings → General → Advanced, these options are designed with the tech-savvy user in mind. It's a powerful playground, but it's also a place where it's all too easy to mess things up if you're not careful. Despite all the warnings we’ve placed, it's human nature to explore and experiment, often without fully understanding the consequences.
In response to this, we've made the Low-level settings more user-friendly and intuitive. It's now easier to understand what each setting does, and even if you do make a mistake, we've implemented security measures like validation checks for entered values to protect you from major missteps.
As for the settings themselves, we've added new ones, retired old ones, and have continued to refine this advanced toolset. A comprehensive guide on Low-level settings is available in our Knowledge base. So get ready for an enhanced, yet safer deep dive into the depths of customization with AdGuard's advanced settings!
AdGuard for Android 3.6.11
Release date: January 20, 2023
You must have been missing AdGuard for Android updates. Well, you won't be bored now, because we're breaking into 2023 with a new release of the product, and we'll only gain traction from there.
The main changes in AdGuard v3.6.11 for Android were made in our core filtering engine – CoreLibs and DNSLibs. As for the rest, we’ve worked to enhance content filtering and made a bunch of minor changes to improve the application performance.

Updated DnsLibs to v2.0.75 #4324

A significantly updated version of the DNS filtering library consumes less resources and runs faster. The DNS-over-QUIC protocol implementation now supports the RFC 9250 standard, and the experimental status was removed from the DoQ support.

First step to Encrypted ClientHello support DL#161

First of all, what is Encrypted ClientHello? Nowadays, almost every internet connection is encrypted and no one can see what's inside this encrypted connection. However, there is still one little issue with it: the very first packet of the connection indicates the name of the server you are connecting to. Say you want to open www.google.com, your ISP cannot see what exactly you send and receive from it, but they know what website you are communicating with. ECH (Encrypted ClientHello) is a new technology that is supposed to solve this issue and encrypt that last bit of unencrypted information.
So what would be the first step to supporting it from AdGuard? Surprisingly, it is to suppress ECH! This can be done by switching on both pref.dns.block.ech and pref.https.redirect.doh flags in the Low-level settings.
But fret not: what we want to achieve is to provide you with ECH support globally so that all your apps could benefit from ECH, not just your browser. To accomplish this, AdGuard makes your apps establish regular HTTPS connections with it, and then it will establish a ECH-enabled connection on their behalf. This experimental feature is planned for the next update so stay tuned.

Updated CoreLibs to v1.10.186

DNS-over-HTTPS filtering

Added an option to redirect secure DNS requests to the local DNS proxy #1563
Chrome and Firefox DNS queries sometimes could circumvent DNS filtering by using a DNS-over-HTTPS server. Now AdGuard can automatically filter DNS-over-HTTPS as well.
This feature is experimental and can be enabled in Low-level settings, its name is pref.https.redirect.doh. In the future versions we're planning to enable it by default.

Improved content filtering

The following new features are important to filter maintainers and provide advanced capabilities for content filtering.

Enhancement

Added a new $jsonprune basic rule modifier. This modifier allows advanced filtering for JSON responses #1447
Added a new $hls basic rule modifier. This modifier provides advanced filtering capabilities for modifying HTTP live streaming files which will help with preventing video ads. #1434
Expanded capabilities of the $stealth modifier. Filters maintainers can now specify which Stealth Mode features should be disabled for a given URL. Before that change the only option was to completely disable Stealth Mode. #1224
Added support for empty $path modifier for non-basic rules. #1591
$removeparam can now be applied to POST requests. #1573

Fixed

Hide your Referrer from third-parties Stealth mode option interferes with the $third-party modifier #1640
Cosmetic rules with :where() pseudo-class are rejected #1609
Rules with $third-party modifier block resources from the site's own subdomain #1637
Rules with the $all modifier do not block explicitly visited sites #1590

Other improvements

Enabled HTTPS filtering by default for Soul Browser #4202

Other fixes

When confirming 2FA the code entry page disappears in some cases
AdGuard does not create a local VPN and protection does not start #4269
Internet fails to work when a network is changing from Wi-Fi to mobile data #4265
Compatibility issue with iRobot Home app #4273
AdGuard for Android 3.6.10
Release date: August 26, 2022
In this version we’ve improved connectivity check — now the app determines better whether there is internet connection.
AdGuard for Android 3.6.9
Release date: August 2, 2022
This is a technical update aimed to increase the app stability and fix minor bugs.
AdGuard for Android 3.6.8
Release date: April 27, 2022
In this version we've added a new feature — 'Protect from DPI'. In a nutshell, it modifies your outgoing traffic to prevent ISP's Deep Packet Inspection systems from detecting the websites you visit. To make this feature visible and enable it, select 'Custom' in the Stealth Mode tab and scroll down.
Also, we managed to solve an issue relevant to users with rooted devices. Because of the Certificate Transparency feature in Google Chrome, the system certificate we use to read HTTPS traffic, was not found by root, or superusers. To fix it, the CoreLibs team developed a special module for Magisk Manager — now users can copy the HTTPS certificate and don't experience any problems with the new Chrome.
Besides, we've enabled HTTPS filtering by default for Naver Whale Browser. Finally, CoreLibs and DnsLibs were updated.

Changelog

[Enhancement] Replaced the "Move certificate" with "AdGuard certificate" as a recommended Magisk module #4126
[Enhancement] Added the 'Protect from DPI' option to Stealth Mode #4131
[Enhancement] Updated translations #4133
[Fixed] AdGuard does not turn on in Samsung Secure Folder on Android 12 #4073
[Fixed] The URL in the About tab is wrong and includes unnecessary words (ZH-TW) #3654
[Fixed] Error installing the HTTPS certificate on Samsung devices #4115
[Other] Updated CoreLibs and DnsLibs to their latest versions
AdGuard for Android 3.6.7
Release date: February 1, 2022
📲 Lately some of our users experienced discomfort — they couldn’t make voice calls in WhatsApp when AdGuard v3.6.6 for Android is enabled. The CoreLibs team managed to combat this problem. 📚 Besides, we’ve made several fixes to the scriptlets library. To recap, scriptlets are powerful blocking tools. In particular, they carry out a noble mission: to neutralize anti ad blockers. The previous version of AdGuard for Android had a scriptlet library that contained an incorrect fix for rules like #%#/scriptlet(“abort-current-inline-script”, ...), which could break some web pages; now the problem is solved. Having dealt with all the issues, we’re ready to present a new version. Please meet v3.6.7, we’ve done our best for it to function smoothly.

Changelog

[Fixed] AdGuard breaks calls in WhatsApp #4080
[Enhancement] CoreLibs to v1.8.285 #4089
AdGuard for Android 3.6.6
Release date: December 30, 2021
After the last update of AdGuard for Android, some users may have encountered the problem of the app crashing when using earlier versions of the Firefox browser. Well, we decided to close all debts this year and release the patch today. We also did something that no release can do without: we updated CoreLibs.

Changelog

[Fixed] AdGuard crashes while using earlier versions of Firefox browser #4068
[Enhancement] Updated CoreLibs to v1.8.281 #4076
AdGuard for Android 3.6.5
Release date: December 17, 2021
It's time to release AdGuard v3.6.5 for Android. The biggest thing about this version is the enhanced Browsing Security module which now blocks requests to malicious and phishing sites better and faster! No less important point is that we’ve updated CoreLibs and DNSLibs to make the app perform more reliably, and fixed various minor bugs. Hope you will enjoy AdGuard v3.6.5 for Android!
[Enhancement] Enhanced Browsing Security module
With the implementation of new Safe Browsing API v2, Browsing Security module responsible for blocking requests to malicious and phishing sites, has become more effective. The upgraded version of this module makes browsing the Internet safer than ever and leaves no chance for the malicious code to be executed.

Changelog

[Fixed] Keenetic app compatibility issue with AdGuard #4035
[Fixed] Cosmote Greek carrier VoWiFi blocking #3821
[Enhancement] Add 360 browser to the list of browsers #4040
[Enhancement] Updated CoreLibs to v1.8.274 #4061
[Enhancement] Updated DnsLibs to v1.6.70 #4051
AdGuard for Android 3.6.4
Release date: September 17, 2021
This quick update fixes a bug that could have happened to our long-term users. If you have been using AdGuard for a few years and your security certificate expired, it could have lead to an HTTPS filtering failure. After this update, you will see a notification on the app’s main screen. Tap on it and follow on-screen instructions to reinstall the certificate and resume HTTPS filtering.
AdGuard for Android 3.6.3
Release date: September 8, 2021
In this version we focused on updating CoreLibs. Namely, we dealt with the priority of existing modifiers and added several new ones: $denyallow, $redirect-rule, $removeheader, and $specifichide. It might be of interest to users who’d like to create their own ad filters. Besides, we’ve made userscript exclusions work properly and fixed all issues found. We know you are waiting for v4.0, so are we. Trust us, it’s worth it.

Changelog

[Fixed] Proxy gets disabled after each AdGuard VPN update #3680
[Fixed] Stealth mode settings configured in the setup wizard are not applied #3747
[Fixed] AdGuard doesn't let users of the MEGA app log in #3837
[Fixed] "NetworkCallback was not registered" error when stopping protection #3870
[Fixed] Instagram doesn't work in Local HTTP Proxy mode (root access) #3879
[Fixed] NektoMe doesn't work when AdGuard is enabled #374
[Fixed] If a phone has access to an IPv6 connection, AdGuard for Android fails to connect to DNS-over-QUIC servers that are only accessible over IPv4 #3927
[Fixed] The issue with changing the language in the DNS section #3731
[Fixed] Root + Local HTTP proxy slowdown on Android 7 #3844
[Fixed] Check proxy connection status error #3848
[Fixed] TikTok doesn't work when AdGuard is enabled #3866
[Fixed] Wrong exclusions suggested for $removeparam rules in the filtering log #3873
[Fixed] Don't pass DNS64 settings to DNSLibs if IPv4 network interface is present #3886
[Fixed] Connection issues on Fujitsu devices
[Fixed] Issue with an expired security certificate
[Fixed] Extend public networks list to force IPv4 default route
[Fixed] com.android.browser connection issues on several devices
[Fixed] Stealth mode screen can't be scrolled
[Enhancement] Updated DnsLibs to v1.6.29 #3952
[Enhancement] DNS-over-QUIC (Removed "experimental" label) #3842
[Enhancement] Turkey - Turkcell VoWifi new IP address #3864
[Enhancement] Fanboy's Annoyance List's Subscription URL is broken #3865
[Enhancement] Enable HTTPS filtering by default for Edge Dev, Edge Beta, and Styx Browser #3897
[Enhancement] Do not hardcode excluding AdGuard VPN package from filtering #3923
[Enhancement] Added Yandex Browser to the list of browsers #3951

CoreLibs updated to v1.8.163 #3945

[Fixed] Rule with $important modifier should have higher priority than the rule with $all modifier #1440
[Fixed] Userscript exclusions do not work as they should #1425
[Enhancement] Add $denyallow modifier #1304
[Enhancement] Add $redirect-rule modifier #1303
[Enhancement] Add $removeheader modifier #1427
[Enhancement] Add $specifichide modifier #1166
[Enhancement] Add an option to send Global Privacy Control's Do NotSell signal to Stealth Mode #1451
[Enhancement] Improve the way negation works for $redirect rules #1388
[Other] Rules with $extension modifier unblock blocked requests #1350
AdGuard for Android 3.6.2
Release date: May 4, 2021
Well, well, 3.6.2 release arrived. One beta and two RCs have proved successful, we said, “Hooray,” and released the final version right away.
So, what’s inside it? We could write about updated CoreLibs and DnsLibs, improved data collection for reports and minor issues like parsing SDNS links for DoQ servers, but honestly, not many people would understand what the hell it means. Trust us, the app has only gotten better!
P.S. v4.0 is coming. Hopefully, v3.6.2 will be the last way station before the new era.

Changelog

[Enhancement] Added Microsoft Edge Canary browser to the list of supported browsers #3808
[Enhancement] Added Iceraven Browser to the list of supported browsers #3797
[Enhancement] Added QQ and UC browsers to the list of supported browsers #3707
[Enhancement] Added Privacy Browser to the list of supported browsers #3677
[Enhancement] Added Vivaldi Snapshot to the HTTPS filtering list #3741
[Enhancement] Added popular Wi-Fi calling servers to the default exclusions list #3742
[Enhancement] Added posteitaliane.posteapp.appbpol to exclusions #3756
[Fixed] Built-in iptables is missing support for “-p dport” #3782
[Fixed] Disable HTTPS filtering for com.google.android.feedback #3655
[Fixed] Unable to get a trial period #3691
[Fixed] com.tomtom.amigo.huawei app incompatibility #3767
[Fixed] de.avm.android.fritzapp — VoIP/SIP issue #3810
[Fixed] Buffer was exhausted while reading /proc/net/tcp6 #3832
[Other] Added Kurdish localization #3774
[Other] Updated DnsLibs to v1.5.26 #3829
[Other] Added “UniFi Network” to the apps exclusions list

Updated CoreLibs to v1.7.211

[Fixed] CSS rules with URL shouldn’t be allowed #1431
[Fixed] HTTPS filtering issue at hepsiburada.com #1406
AdGuard for Android 3.6.1
Release date: February 18, 2021
Another round of software release life cycle complete! This version of AdGuard for Android has made its way from an unsure of itself alpha to a confident release. We have routinely updated CoreLibs, fixed a couple of bugs and compatibility issues. This time, there are no shocking features like watching YouTube without ads but this release is no less important than the previous one. After all, we are getting better with every update!

Changelog

[Enhancement] CoreLibs updated to v1.7.189 #3749
[Fixed] Filtering doesn't work with 4G and IPv6 #3527
[Fixed] An error when trying to get a trial period via the app #3691
[Fixed] hepsiburada.com - HTTPS filtering issue #1406
[Fixed] blockchain.com is broken #1411
[Fixed] Compatibility issues
[Other] Several popular Wi-Fi calling servers added to the default exclusions list #3742
[Other] HTTPS filtering for Vivaldi Snapshot browser is enabled by default now #3741
AdGuard for Android 3.6
Release date: December 15, 2020
AdGuard for Android v3.6 is headlined by two pretty big changes, new features even. It's watching YouTube ad-free inside the app and DNS-over-QUIC protocol support. The first one is easy to grasp, the second one will take some explaining. ​ ​[Enhancement] An option to watch Youtube ad-free #2994 ​ Blocking ads in YouTube on Android has been exclusive to browsers for a long time, thanks to the restrictions Android OS imposes on filtering other apps' traffic. However, we found a way for you to avoid ads in YouTube app. Follow these easy steps: ​
Open the YouTube app and start the video you want to watch.
Tap on the Share button and select AdGuard for Android from the list of apps.
A new window will pop up where you'll be able to watch the video without being interrupted by ads! ​ ​[Enhancement] DNS-over-QUIC support ​ DNS-over-QUIC, or simply DoQ, is a DNS encryption protocol. You might have heard about DNS encryption protocols before, the most common ones are DNS-over-HTTPS and DNS-over-TLS (DoH and DoT correspondingly). So what makes DoQ so special? A bunch of things, really: out-of-the-box encryption, reduced connection times, and better performance in cases of lost data packets. ​
​ The feature is still experimental — AdGuard for Android is one of the first open-source implementations of DNS-over-QUIC — but it's perfectly functioning and we encourage you to try it. You'll find it under DNS Filtering. Select AdGuard DNS and choose DoQ from among the available encryption protocols. ​

Changelog

[Enhanced] HTTPS filtering for the Firefox Fenix browser is enabled forcibly #3617
[Enhanced] The "What's new" dialog is updated #3638
[Fixed] Shadowsocks proxy gets removed automatically #3641

DnsLibs updated to v1.4.14

[Enhanced] DoQ/DoH/DoT queries are retried before using the fallback #86
[Other] DoQ support is added to DNS stamps #84
AdGuard for Android 3.5.2
Release date: November 20, 2020
Today we are launching a small but still very important hotfix. Namely, the compatibility with the new Chrome 87 was improved and the CoreLibs was updated.
[Other] ERR_HTTP2_PROTOCOL_ERROR on some websites #1374
This week Chrome 87 was released, which has a compatibility problem with AdGuard when using the HTTP/2 filtering protocol - some sites may experience regular hangs and download errors. In this update we have improved HTTP/2 filtering compatibility with Chrome 87, it is recommended to upgrade to the new stable version as soon as possible. :)

Upgraded CoreLibs to v1.7.150

[Enhancement] Improve socket connect with hostname provided (for Proxy mode) #123
[Enhancement] Indicate libraries versions #1150
[Fixed] $badfilter rules are sensitive to domain lists #1331
[Other] $generichide rule causes that assistant is showing that AdGuard is disabled #7
[Other] Connection error after waking computer from sleep mode #3412
AdGuard for Android 3.5.1
Release date: October 2, 2020
Meet the release version 3.5.1 of AdGuard for Android. We’ve been working on improving its integration with AdGuard VPN, and now it seems we’ve maintained their seamless cooperation. Besides, we’ve updated CoreLibs and Dnslibs.

Changelog

[Enhancement] Add Fennec F-Droid to the list of browsers #3587
[Enhancement] Add com.huawei.browser to the list of browsers #3495
[Enhancement] Enable forcibly HTTPs filtering for the Firefox Fenix browser #3617
[Fixed] Make the AdGuard application update work on Android 11 #3564
[Fixed] Thai Ads Filters always enabled if the Language Filters group is enabled #3520
[Other] Update CoreLibs to 1.7.109 #3586
[Other] Update DnsLibs to the 1.3.24 version #3578
[Other] ru.sogaz.tm – app is not working #3573

Upgraded CoreLibs to v1.7.114

[Enhancement] Add $ping content type #1258
[Enhancement] Check that trusted-types CSP does not break the content script #1320
[Fixed] AGFDVSocket doesn't return original peer address in case of outbound proxy set #1330
[Fixed] AdGuard doesn't filter domains when HTTPS filtering is disabled #1343
[Fixed] AdGuard doesn't work with Youtube in Safari macOS Big Sur (infinity circle loader) #727
[Fixed] Exclusion with $elemhide,jsinject,extension disable HTML filtering rules #1337
[Fixed] Filtering log doesn't show information about cookies #3406
[Fixed] Problematic userscripts #1273
[Fixed] Redundant errors when local.adguard.org accessed from non-HTTPS-filtered processes #1056
[Fixed] Regexp rule doesn't match URL #1311
[Fixed] The foreign requests get into filtering log with enabled DNS module #3411
[Fixed] URL contains extra slash while matching against filters and some rules are not applied #1338
[Fixed] Wrong filter is shown in Filtering log #1312
[Fixed] `$badfilter` rules are sensitive to domain lists #1331
[Other] HTML is not detected on some sites #1308
[Other] local.adguard.org certificate is not re-issued when it expires #1348
AdGuard for Android 3.5
Release date: September 8, 2020
It's time to release AdGuard v3.5 for Android. We took our time with this one: tested two betas and expanded the changelog. What's in there? Introduced compatibility mode with AdGuard VPN for Android, updated CoreLibs and a load-truck of fixed bugs.
[Enhancement] Compatibility Mode with AdGuard VPN for Android app #3441
Since AdGuard VPN for Android was first introduced, there was already a way to make it work along with AdGuard ad blocker. But to make the two apps coexist in peace, you were required to jump through some hoops. Anyone who went ahead and did the thing 100% has been waiting for a proper integration ever since — and we oblige.
The best kind of compatibility is when you install two apps and they just start working together. We did exactly that. Presuming you already have AdGuard ad blocker installed, just download AdGuard VPN from Google Play Store (you can get there right from the ad blocker app, there's a new item in General Settings menu).
Both apps will detect each other and do everything that's needed for smooth joint work. All that will be left for you is to enjoy both ad-free Internet and all the benefits of a VPN. By the way, it works the other way around just as well: install AdGuard ad blocker on top of an already-running AdGuard VPN and you're good.
If you'd like to disable Compatibility Mode for any reason, it's very simple to do so from AdGuard ad blocker settings, just toggle the switch. Additionally, you can add AdGuard ad blocker and AdGuard VPN tiles to your device's notification bar and toggle them in one tap at your own will — thanks to Compatibility Mode the configuration will change immediately and silently.

Changelog

[Enhancement] Adaptive icons for app shortcuts #2656
[Enhancement] Firefox Fenix browser added to the list of default browsers #2861
[Enhancement] New rules are now added to the top of User filter #2962
[Enhancement] 'Block' button now immediately switches to 'Unblock' after adding a custom rule via Filtering Log #3012
[Enhancement] Extended information written to state.txt when logs are exported #3063
[Enhancement] Enabled userscripts are now included in the query string for the web reporting tool #3288
[Enhancement] Updates screen now shown when "Check for updates" shortcut is used #3318
[Enhancement] Added automation API for proxy servers #3363
[Enhancement] Mozilla Reference browser added to the list of default browsers #3408
[Enhancement] Added an option to disable DNS fallback #3447
[Enhancement] AdGuard Simplified Domain Names filter renamed to AdGuard DNS filter #3475
[Enhancement] Rename adguard.crt to AdGuardCertificate.pem #3489
[Enhancement] Huawei browser added to the list of default browsers #3495
[Enhancement] Add the "What's new" dialog #3532
[Enhanced] Prepare AdGuard before the v3.5 release #3546
[Fixed] First letter in the sentence is not capitalized automatically on the 'Message to support' screen #3079
[Fixed] AdGuard doesn't work on devices with Restricted Account #3299
[Fixed] Toast notification for "Checking for updates" shows late #3343
[Fixed] Unnecessary "Android Private DNS is enabled" notification on Android 11 #3478
[Fixed] Downloads in some apps don't work properly on Android 11 #3516
[Fixed] Wrong state of the disabled option #3538
[Fixed] Fix a bug related with a strange and small "m^" rule #3548
[Other] Updated options for default DNS resolvers #3428

DnsLibs

[Enhancement] Added support for comments at the end of line in hosts rules #75
[Fixed] LDNS logging #73
[Other] Added upstreams sorting by RTT #39

Corelibs

[Enhancement] #@# without any domains specified should disable the rule completely #1296
[Enhancement] Added verification for trusted-types CSP #1320
[Fixed] Connection has timed out in state have-result #1180
[Fixed] Problematic userscripts #1273
[Fixed] Process name detection causes warnings in Windows Security #1316
[Fixed] OCSP checks aren't passed through the selected DNS #1328
[Fixed] AGFDVSocket doesn't return original peer address in case of outbound proxy set #1330
[Other] Connection speed is capped when AdGuard is enabled #702
AdGuard for Android 3.4
Release date: May 21, 2020
Meet AdGuard v3.4 for Android, it’s time for it to see the world! Having tested two betas, we feel confident to present this version to a wider audience. Spring is a time for renewal, and software is not an exception. We've fixed some old bugs, updated CoreLibs and made the app more compatible with Android TV.
[Fixed] AdGuard blocks Internet connection #2842
This bug was a hard nut to crack. For a long time it appeared randomly (at least, it seemed so) on devices of AdGuard users. Still, the symptoms matched: smartphones lost any network completely while AdGuard was turned on. Of course, it was crucial for us to solve this problem, and at last, we've managed to do it. It’s beyond words how relieved we feel afterwards, let alone the affected users!
[Fixed] Firewall's restrictions are ignored when WiFi gets enabled #3313
Another troublesome bug that deserves special attention. In the previous version 3.3, if you had specifically prohibited some apps from accessing the Internet via mobile data, the restrictions worked right up until you enabled Wi-Fi, which was not the intended behaviour.
[Enhancement] Integration with DnsLibs #3229
DnsLibs is a DNS proxy library that's required to provide DNS filtering. It supports all existing DNS protocols including DNS-over-TLS, DNS-over-HTTPS, and DNSCrypt. We developed it to replace the old DNSproxy, which had one serious flaw: it caused high battery resource consumption. DnsLibs is much better optimized and will ensure a longer lifespan for your phone's battery if you're using DNS filtering a lot.
[Enhancement] Improved functionality on Android TV #3238
AdGuard for Android is first and foremost an app for mobile phones and tablets, but it can be installed on other Android devices, such as smart TVs. We have made several improvements for this specific case, for example:
AdGuard now better works with lists
Better navigation between AG menus on smart TVs
Option to click on snackbars
Option to exit the promo screen
"Close" option for all dialogues
Now AdGuard for Android will be much easier in use if you decide to install it on your smart TV. If you still encounter any bugs or inconsistent behaviour, please report it here.

Changelog

[Fixed] Application won’t start after the restart of the device #3286
[Fixed] Stealth mode preset changes after an update #3287
[Fixed] Locale change bug #3301
[Fixed] com.android.providers.downloads traffic isn't routed #3355
[Fixed] Filtering doesn’t work with AdGuard enabled on Android 11 #3377
[Fixed] Impossible to enable UDP through SOCKS5 proxy #3394
[Fixed] Impossible to create a hotspot without disabling DNS filtering #3187
[Fixed] "HTTPS filtering is off" Snackbar covers "Data Saved" stat on the Home screen #3292
[Fixed] The app crashes when switching from 4G to Wi-Fi in Local HTTP Proxy Mode #3431
[Fixed] 'Back' button on the Settings screen works incorrectly #3427
[Fixed] AdGuard doesn't launch #3430
[Enhancement] Custom adguard: scheme is now used for adding userscripts #3000
[Enhancement] "Cancel" button added to the "Add proxy" screen #3093
[Enhancement] stealth.enabled=false is now sent in query string if Stealth Mode is turned off when sending a report #3169
[Enhancement] Block ads in all apps parameter is now sent when sending a report #3350
[Enhancement] An option to suppress HTTPS filtering error notification #3225
[Enhancement] HTTPS filtering dialog has been improved #3284
[Enhancement] Romanian and Thai localizations have been added #3341
[Other] Acknowledgements page has been updated #82
[Other] Firefox Preview Nightly for developers has been added to the list of supported browsers #3333
[Other] Certificate installation sequence on Android 11 #3354
[Other] Cobra Browser has been added to the list of supported browsers #3357
[Other] Application crashes on Android 11 upon opening filtering log details #3366
[Other] Vivaldi Snapshot and Vivaldi Sopranos have been added to the list of supported browsers #3400
[Other] Add Brave Beta has been added to the list of supported browsers #3401
[Other] AdGuard crashes in local HTTP proxy mode #3416
[Other] HTTPS exclusions list has been updated #3419, #3425
[Other] Yuzu Browser Plus added to the list of supported browsers #3424
[Other] Brave Nightly added to the list of supported browsers #3432
[Other] The list of HTTPS exclusions has been updated
[Other] Translations have been updated

CoreLibs has been updated to v1.5.265

[Fixed] Cosmetic rules can be used as CSS rules #1293
[Fixed] Rules selection algorithm works not as intended when HTTPS filtering is disabled #1291
[Fixed] Rules with restricted domains do not match requests without referer #1286
[Fixed] "Failed to initialize protocol filters" error #1282
[Fixed] Incorrect extended CSS rule causes problems with JS rules #1147
[Fixed] 'Proceed anyway' option doesn't work correctly if website is blocked by a rule with $all modifier #1267

DnsLibs updated to v1.2.26

[Other] 'Unblock' button is not visible in Filtering Log details #3429
AdGuard for Android 3.3.3 Release
Release date: April 3, 2020
Yet another and hopefully the last fix before the fresh beta rolls out. Several domains have been added to SSL exceptions to fix compatibility issues with certain mobile carriers.
[Changed] The list of HTTPS exclusions has been updated
AdGuard for Android 3.3.2 Release
Release date: February 13, 2020
In this small update, there’s only one but important fix and a few additions to the exclusions list.
[Fixed] Protection doesn’t restart when an excluded app is installed #3340
[Changed] The list of HTTPS exclusions has been updated
AdGuard for Android 3.3.1 Release
Release date: December 30, 2019
Recently we claimed to make the last release of the year, and it kinda was that. Ignore that this update is called a 'release', it's more of a 'hotfix'. Because you wouldn't call this tiny hotfix a release, right? Just a couple of bugfixes, that's all.
[Fixed] The protection doesn't start automatically if you restart the phone right after checking for filter updates #3286
[Fixed] Stealth Mode configuration isn't saved after app update #3287
AdGuard for Android 3.3 Release
Release date: December 26, 2019
The last AdGuard for Android release of the decade! This sounds solid. Anyway, it’s more of a coincidence than anything else that such a massive update falls right on Christmas. And don’t get us wrong: it is massive. Multiple major features and over 50 lesser ones — all in all it combines to make a nice Christmas gift for y’all!
[Improved] Filtering engine
Version 3.3 brings scriptlets and $redirect modifiers support. Scriptlets is a powerful ad-blocking tool that helps to block ads on websites that use different circumvention techniques. $redirect modifier is another tool that allows substituting an ad with special ‘resources’ instead of blocking it. For instance, it can replace a banner with a transparent 1x1 image.
[Changed] The onboarding process #2895
We sure love us some redesign! This time, we revamped the onboarding sequence (basically, what you see when you launch the app for the first time). Key changes:
An option to choose a ‘quick’ or a ‘long’ configuration: you’ll be asked to either make only key decisions or set most of the settings manually
New option to allow sending some technical and interaction information that will help us further improve AdGuard
Better graphics!
[Added] New activation flow #2901
Not a lot of Android users had a chance to see our AdGuard for iOS app, so they likely don’t know about the system that’s being used there for Premium features activation. But it recommended itself as one that’s convenient for users, so we adopted it for AdGuard for Android too.
As you can see, there are now two options: enter a license key directly, or log into AdGuard personal account. If your account has a license key that can be used to activate Premium, it will get picked up automatically after you enter credentials.

Ad blocking

[Added] Preset Stealth Mode settings configurations #2625
[Added] abp:subscribe and adguard:subscribe links interception #2918
[Added] subscribe.adblockplus.org links interception #2930
[Changed] Internet connection availability checking method #3095
[Changed] Whale browser has been added to the known browsers list #3175
[Fixed] DNS User filter import bug #2972
[Fixed] Some legit hosts lists are not recognized as valid #2982
[Fixed] Error while checking updates of resources added from the local storage #2997
[Fixed] Quick Settings does not allow to choose a different Privacy protection Level #2768
[Fixed] “Exclude from filtering” button behavior #3052
[Fixed] Google Now can’t be updated with “Always-on-VPN” enabled #3039
[Fixed] AdGuard Extra enables automatically when there’s an available update #3216
[Fixed] The application causes a crash if custom filters were enabled #3258
[Fixed] AdGuard breaks some UDP connections on Samsung S10 devices with Android 10 #3259
[Improved] AdGuard now uses on-the-fly methods of applying settings changes without restarting the protection when possible #2881
[Improved] DNS filtering to block cloaked trackers #3228
[Improved] “Block phishing and malware” option now is enabled automatically when Premium gets activated #3249
[Improved] Now AdGuard can block AAAA requests in networks without IPv6 interface #3197

UI

[Added] An option to purchase a new license via the app #2897
[Added] Trial period and license activation via OAuth #3081, #3244
[Added] Whitelisting apps option to the Assistant dialog #2853
[Added] “On/Off” switch on some screens #2877
[Added] Notifications about certificate errors #2722
[Added] Ability to copy the current version number by tapping on it #2773
[Added] Link to Version history in the About tab #2774
[Added] System default theme option #2174
[Added] Silent update action as a long-tap on the update button #2890
[Added] “Failed to move the certificate” notification for rooted devices with Magisk firmware #2941
[Added] Empty field validation when adding a new extension #2983
[Added] “Refresh license status” button #2988
[Added] Restore purchases button: a notification if there’s nothing to restore #2990
[Changed] The imported filter list’s URL now won’t be stored if a content: link was used #2813
[Changed] Chrome custom tabs now open in the same window #3019
[Changed] Premium screens now can be viewed without Premium #2843
[Changed] Update notifications behavior #2922
[Changed] DNS request type is now displayed in the Filtering log even when there's no answer #2961
[Changed] Tap on filter category titles in search will bring you to the respective category’s screen #3035
[Changed] Toast notifications parameters #3087
[Changed] Proxy screen UI #3092
[Changed] AdGuard now remembers the selected type of data to display in Apps Management #3140
[Changed] Phrasing on activation screens #3141
[Changed] “Clear DNS statistics” warning description #3194
[Changed] Improve the in-app purchase design #3252
[Fixed] Minor UI issues #2879
[Fixed] Issue with distribution graphs on the main screen #2935
[Fixed] Search on Apps Managements screen is working slow #2951
[Fixed] Unexpected connections resets #2980
[Fixed] Incorrect filter locale is displayed after language change #2971
[Fixed] Scrolling issue in the Filtering log #2974
[Fixed] Wrong filters status is shown #2987
[Fixed] Incorrect updates status when the network is not available #3020
[Fixed] “Preparing to start protection” notification #3034
[Fixed] “Edit Filter” overlay bug #3045
[Fixed] Divider stripe is still shown when there are no updates available #3047
[Fixed] Cloudflare DNS description #3062
[Fixed] Wrong Chinese date format #3068
[Fixed] Application updates icon #3098
[Fixed] Missing button shadow #3109
[Fixed] Some buttons in the first start dialog boxes can’t be seen on certain device models #3114
[Fixed] The switch for Custom filters incorrectly represents the state of the filter group #3119
[Fixed] Pressing the “Buy one more license” button closes the current screen #3136
[Fixed] Certificate installation dialog is missing #3176
[Fixed] Wrong toast notification is displayed when the license expires #3183
[Fixed] “Missed ad” option in the Feedback section leads to an error if DuckDuckGo is selected as the default browser #3128
[Improved] HTTPS filtering-related UI changes #2896
[Improved] UI elements are now focusable on Android TV #2818
[Improved] Rich formatting added to some modules’ descriptions #2878
[Improved] Phrasing on onboarding screens #3248
[Improved] Phrasing in the Apps Management details activity #3250
[Improved] Localizations have been updated: #3271, #3188, #3161

Networking

[Added] A prevention system for connections overflow #2989
[Added] TLS v1.3 support for custom DNS servers #3132
[Changed] DNS-over-HTTPS connections number limit has been abolished #3224
[Fixed] Some apps don't see available WiFi networks when AdGuard local VPN is up #2836
[Improved] Interaction between AdGuard DNS settings and Private DNS #2797
[Improved] AdGuard’s network safety and stability #2995
[Improved] Connection error processing #3195

Other

[Added] Whitelist export feature #3069
[Fixed] Update window appears after a short inactivity period #3055
[Fixed] Userscripts updates are not tracked by the battery service #3073
[Fixed] AdGuard 3.2 does not launch #3076
[Fixed] “Include license data” option works incorrectly when you try to export settings #3067
[Fixed] Crash when the app runs scheduled tasks #3164
[Fixed] Crash in the Updates activity #3165
[Fixed] Crash when Android OS tries to load the icon #3166
[Fixed] Crash on some Android builds #3167
[Fixed] Crash in the main activity #3168
[Fixed] Crash when user communicates with the extensions activity #3171
[Fixed] Crash when the log is being collected #3212
[Fixed] Crash on MIUI phones with Ultra battery saver #3210
[Fixed] Max imported settings file size increased to 10 Mb #3203
[Improved] Target SDK level has been changed to 29 #3053
[Improved] CoreLibs has been updated to v1.5.74 #3105
AdGuard for Android 3.2.150
Release date: August 29, 2019
The previous hotfix dealt with some urgent bugs, so we had to act fast and couldn't fix the rest of the less important issues. After today's update all of them should go away.
[Fixed] DNS filtering breaks regular filtering on HTC devices #3014
[Fixed] AdGuard doesn't completely remove extensions #3015
[Fixed] Disabling network access globally blocks DNS requests #3025
[Fixed] Bypassing DNS requests breaks DNS filtering #3026
[Fixed] AdGuard fails to start protection after an update #3024
[Fixed] Facebook lite cannot detect that IPv6 is unreachable #3031
[Fixed] Blocked app notification works incorrectly #3032
[Improved] dnsproxy library has been updated #3016
AdGuard for Android 3.2.140
Release date: August 23, 2019
This is a small hotfix for the recent AdGuard for Android release. Mostly squashing bugs related to the new features introduced in v3.2.
[Fixed] DNS filtering breaks regular filtering on HTC devices #3014
[Fixed] AdGuard doesn't completely remove extensions #3015
[Improved] dnsproxy library has been updated #3016
AdGuard for Android 3.2.135
Release date: August 20, 2019
Two months of development are rarely enough to come up with an update that big. Despite that, AdGuard 3.2 for Android is packed with major new features, not mentioning the long list of minor changes that goes on and on.
There’s something for both experienced users (userscripts support, DNS user filter) and for absolute beginners (feature discovery) to help them make their first steps. And everyone will equally appreciate the improved stability and speed that come with CoreLibs filtering engine update.
[Added] Feature discovery #2459
We try to position AdGuard for Android as an app you can technically turn on and forget about it, but that can offer so much more if you spend some time to explore it. To help new users not get lost in many many features we added over the years, we'll now highlight the most important UI elements and give short tooltips that explain what they are all about. This will only happen when you visit this or that screen for the first time, of course, otherwise, it would become old very soon.
[Added] Userscripts support #34
Userscripts (we also call them extensions) are basically mini-programs written in Javascript that extend the functionality of one or more websites. Usually, you'd need some special userscript manager to add them, and it's traditionally more of a desktop thing. But with AdGuard everything is possible! Now you can add any userscripts by URL or load them from a file, and AdGuard will serve as a userscript manager and take care of the rest. Go to Settings > Extensions to enable some of the preinstalled extensions or to add custom userscripts. By the way, you can tap on any userscript from among the added ones to see more details and to reinstall or delete it.
[Added] DNS User filter and custom hosts files support #2803, #1851
This is very similar to the regular User filter for custom filtering rules, but for DNS requests. You can find it at Settings > DNS Filtering > DNS Requests blocking. DNS User filter supports two types of syntax: a limited portion of AdGuard syntax and "hosts" syntax. More about it in our Knowledge Base.
Another DNS-related feature is hosts files support. AdGuard users now can add any hosts lists as custom DNS filters. Again, this option is on the Settings > DNS Filtering > DNS Requests blocking screen.
[Fixed] IPv6 filtering doesn't work in automatic proxy mode #2579
Not a new feature, but a very important fix. Many users with rooted devices use AdGuard in automatic proxy mode, and it turned out that IPv6 filtering wasn't working in this mode. In this version, the problem is fixed.

Ad blocking

[Added] "Disable AMP" userscript #2815
[Added] Firefox preview has been added to the list of browsers #2958
[Changed] Google DOH and DOT URLs in the configuration have been updated #2844
[Fixed] A bug with license status, filters and userscripts updates #2855
[Fixed] Issues while in root+proxy mode configuration #2894
[Fixed] The value for one of Stealth Mode settings can't be set #2788
[Fixed] Filter groups' statuses aren't restored from backup #2887
[Fixed] DNS filter's metadata doesn't update #2830
[Fixed] Double tap is required to start protection #2883
[Fixed] Custom filters aren't restored from backup #2864
[Fixed] Wrong rule is suggested when blocking an HTTPS tunnel request #2865
[Improved] CoreLibs filtering engine has been updated to v1.4.91 #2928

UI

[Added] An error toast when an error occurs during a long-running background task #2819
[Added] Add "Extension Details" activity #2807
[Added] Empty field validation when adding a new extension #2954
[Fixed] Android TV Overlayed hints can't be dismissed #3003
[Added] Response status to the DNS log entry details #2835
[Changed] Languages' names have been homogenized in the language select menu #2753
[Changed] A bullet has been added to the statistics period selection dialog #2756
[Changed] Cutout area on cutout devices is now colored #2952
[Changed] Icons order in Apps Management has been made consistent #2777
[Changed] Notification about updated userscripts and filters #2796
[Changed] Dialogs on the Stealth mode screen #2808
[Changed] "New custom filter" dialogs layout #2809
[Changed] An indicator telling that AG cannot filter itself has been added to Apps Management #2700
[Changed] AdGuard and Proxy notifications have been combined into a single notification group #2718
[Changed] Upstream DNS server's address is now shown in the Filtering log #2735
[Changed] "Get Premium" activity now closes after free trial is successfully started #2816
[Fixed] Minor UI layout issue #2934
[Fixed] Homepage link for Tracking Protection filter #2937
[Fixed] Overlayed hints can’t be dismissed #2979
[Fixed] UI resets to the classic theme after switching the update channel #2784
[Fixed] UI bug on older LG devices #2789
[Fixed] Settings activity doesn't run on some devices with rare firmware #2770
[Fixed] Search results in Filtering log do not include some matching entries #2681
[Fixed] Valid email address is highlighted as if it was invalid #2752
[Fixed] Minor UI-related issues #2870
[Fixed] An inconsistency with the UI of Stealth Mode settings #2854
[Fixed] Wrong text below the license type in the main menu #2903
[Improved] User dialogs have been greatly improved #2754
[Improved] Items in dialogs are now highlighted on tap #2716
[Improved] Search functionality in the Apps Managements is slow #2951

Networking

[Added] TCP listener to the DNS filtering proxy #2470
[Changed] "Block WebRTC" Stealth Mode option is now applied to browsers only #2757
[Fixed] IPv6 filtering doesn't work in automatic proxy mode #2579
[Fixed] AdGuard blocks internet connection #2842
[Fixed] IPv6 is not resolved within IPv6 VPNs if the main connection is IPv4-only #2325
[Fixed] Proxy settings won't renew if user disables proxy via notification #2707
[Fixed] Low-level setting pref.dns.blocking.nxdomain works inconsistently #2847
[Fixed] Search suggestions don't work in Firefox #2884

Other

[Added] Userscripts metadata localizations #2806
[Fixed] Background filters update does not work #3006
[Changed] Localizations have been updated
[Changed] File names for exported User filter and Whitelist #2880
[Fixed] An error when you export settings #2906
[Fixed] Homepage link for Tracking Protection filter #2937
[Fixed] DNSProxy logging level does not change #2858
[Fixed] AdGuard crashes to desktop #2762
[Fixed] AdGuard freezes when the device orientation is switched to landscape mode at a certain time #2765
[Fixed] AdGuard crashes after adding a certain custom filter #2888
[Fixed] App sometimes crashes upon launch on S10+ devices #2825
[Improved] AdGuard now launches faster #2786
[Improved] Update CoreLibs to 1.4.138 #3001
AdGuard for Android 3.1.0
Release date: May 28, 2019
With releases like this one it's hard to build up excitement, but they are necessary. There are no major new features or radical design decisions. Instead, as you will see, there are a lot of minor UI changes to improve user experience and some fixes to known crashes. So the app should be more stable and user-friendly after this update.

Ad blocking

[Changed] Opera Touch has been added to the browsers list #2691
[Fixed] HTTPS Filtering is unavailable on some devices #2736

Network

[Fixed] AG breaks captive portals authentication #2713
[Improved] DNS-related functionality has been updated #2749
[Improved] Optimised interaction with Magisk v.19.0 #2679

UI

[Added] "Export the license information" flag when exporting settings #2622
[Added] "Modified requests" filter to filtering log #2623
[Added] A confirmation dialog when exiting AdGuard #2566
[Added] An option to download updates manually #2299
[Added] An option to run the onboarding tool for the second time #2562
[Added] Attention bar on the main screen if no filters are enabled #2609
[Added] Icons to switchbars #2610
[Changed] "Filters auto-update period" setting is now grayed out when filters auto-update is disabled #2593
[Changed] Battery usage chart draw style has been changed #2669
[Changed] Localizations have been updated #2725
[Changed] More information about events is shown now by default in filtering log #2564
[Changed] New UI for landscape orientation #2335
[Changed] The descriptions for Stealth Mode options have been updated #2660
[Fixed] An issue with screen rotation #2721
[Fixed] Inconsistency with context menu position on the Proxy settings screen #2641
[Fixed] Incorrect display of letters on the App management screen #2619
[Fixed] Last selected statistics date range does not persist #2516
[Fixed] Logs for exporting have been stripped of identifying information #2639
[Fixed] Occasionally stats for ads blocked are not shown correctly #2627
[Fixed] Splash screen is white when dark theme is enabled #2657
[Fixed] System language detection fails in some cases #2684
[Fixed] UI corrections on the main screen #2617
[Fixed] UI does not support Android TV #2611
[Fixed] Widget 1x1 is missing on some devices #2666
[Improved] First launch VPN description has been improved #2640
[Improved] Multiple Filtering log improvements #2638
[Improved] Separators have been added to statistics for better readability #2630
[Improved] UI has been made more friendly towards color-blind people #2637

Other

[Changed] The suggested battery capacity value for Huawei devices has been changed #2587
[Fixed] AdGuard crashes when you create rules from the filtering log #2737
[Fixed] AdGuard crtashes when you import settings #2687
[Fixed] AdGuard doesn't recognize the SSL certificate #2675
[Fixed] Background activity will be blocked in future Q builds #2629
[Fixed] Compatibility problems
[Fixed] Crash in the Apps Management settings #2308
[Fixed] Protection turns on after app restart #2491
[Improved] CoreLibs has been updated
AdGuard for Android 3.0.297
Release date: March 22, 2019
If you’ve been around the block, you know how we have it here: up goes the release, and the next day it’s the hotfix time. No exception with AdGuard 3.0, on some devices there’ve been problems with Wi-Fi calling, and some users reported updating issues.
[Fixed] Update from v2.12 messes up DNS settings #2643
[Fixed] Changing theme or language triggers "problematic device" notification #2644
[Fixed] Wi-Fi calling issue on LG phones #2645
AdGuard for Android 3.0.291
Release date: March 19, 2019
What do you think of when you see a jump from v2.0 to v3.0? Whatever it is, you'll probably find it inside. New design, new features, better performance, and a variety of bugfixes. Without further ado:

Stealth Mode

It is telling that we’re starting our feature overview with Stealth Mode, listing it even before the redesign, or anything else. With Stealth Mode, AdGuard takes another role in addition to ad blocker and app manager: the role of a privacy protection tool, and a strong one at that. AdGuard has had a special Tracking Protection filter for a long time, but the new module presents an entire range of tools. Some of them will suit almost everyone, and others are for more hardcore users.

[Added] Stealth Mode module #2094

A much anticipated addition, all thanks to the aforementioned CoreLibs integration. For the uninitiated, Stealth Mode module is responsible for protecting your privacy. Use it in conjunction with Tracking Protection filter to ensure the best protection. Also mind that different Stealth Mode options differ in their severity, some are “free”, and some come with certain trade-offs in convenience. When in doubt, read the tooltips or even send us a message with a question.

New UI

As important as Stealth Mode is, the tone of the update is largely dominated by the visual changes, and this time there are plenty. Almost every aspect of the old design was reworked, revamped and (hopefully) improved. There’s too much to mention in one chunk of text, so let's divide them into more digestible paragraphs.

[Improved] App redesign #713

One of the most expected, and at the same time controversial changes, for sure. We were debating whether to put “Changed” or “improved” tag on this one, and decided for the latter. We wholeheartedly believe that the new variant is better than the old one. Our designers spent countless hours on it, going through many iterations, and this is where we finally arrived.
As you will notice very soon, we changed not only colors but the layout too. For seasoned AdGuard veterans, it will take some getting used to, but we are sure you’ll find the new design even better and more convenient after a while.

[Added] Dark theme #104

And before you say “But I was hoping for the dark theme!” — don’t worry, it is also available. Looks not a single bit less slick than the default one.
Hop straight to settings and switch to it if you are a night person :)

[Added] Statistics charts #2083

Statistics are useful, it’s always nice to know how many ads were blocked, how much traffic was saved and so on. But simply looking at bland numbers is not very informative, and also plain boring. Charts both provide more information and are much more comprehensive.

[Improved] New first launch wizard #1965

If you are reading this, likely you don’t need any suggestions and you can navigate AdGuard’s options with ease. But for new and less experienced users this will be a helpful addition. Upon the first launch, the wizard will tell you about available features and suggest turning them on.

[Improved] Widget redesign #2354

App’s icon was changed, so the widget needed to be altered as well. Not much to say here, aside from the change in looks, widgets now provide some statistics about blocked requests and so on.

CoreLibs update

In case you need a refresher, CoreLibs is the new filtering engine that AdGuard is built upon. What AdGuard can and can't do is defined by it, so no wonder it's so important. One of the biggest advantages of CoreLibs compared to the previous engine is that it's cross-platform. This means AdGuard for Android can now take the best from the other AdGuard apps, and you can already see it in action with Stealth Mode.
In this update, CoreLibs receives a further boost, granting better performance and filtering quality. About 150 improvements were made to the filtering engine. We cannot list them all here, but here is a link if you want to check them out.

Other changes

Here are some of the more niche features that will primarily appeal to more tech-savvy users.

[Improved] DNS functionality #2415

There are, in fact, several different improvements hiding under one. Instead of bundling with the dnscrypt-proxy binaries, we are now using our own DNS proxy server that supports all existing DNS protocols. But enough of this gobbledygook, what does it mean for you, the user?
AdGuard now supports DNS-over-TLS protocol, which is one of the most secure modern DNS protocols
To configure a DNS-over-HTTPS (another secure DNS protocol) server, you don’t need to know the SDNS and can use a simple string like https://dns.adguard.com/dns-query.
Indicate any number of upstream servers for your custom DNS server setup.

[Added] More filter subscriptions #12

Self-explanatory: the more, the better! If your favorite subscription wasn’t in the default list before, check it again.

[Added] Custom filter subscriptions by URL #13

…and if it is still not there, no big deal! Just add it manually, because now doing it is extremely easy. Just tap the respective button, enter the filter list’s URL, and it will appear among the rest of the filters. New filter will be updated automatically, and of course, you can add more than one at a time.

[Added] Protection suggestions tab #2241

And again, a feature mostly aimed at newer users. AdGuard for Android accumulated quite a bit of features over the years, and it is not easy to identify from the get-go which are the most important. This new tab draws your attention right on the main screen and hints at which steps can be taken to enhance your protection.

[Added] Problematic devices detection #2458

It seems that more and more smartphone manufacturers follow the questionable trend of killing apps whenever they feel like it. Some brands and models do so more often than other. Fortunately, there are certain steps you can take to improve the situation, and these steps vary depending on your particular device.
AdGuard learnt to detect such problematic smartphone models, and when it gets killed like that for the first time, it will show you a notification that explains what just happened (accompanied by some pieces of advice how to prevent that in the future). Its not a cure-all (if only there was one), but definitely better than nothing.

[Fixed] Wi-Fi calling doesn’t work with AdGuard #2550

Due to the way Wi-Fi calling is implemented, you will face problems if you try to use it while having an active VPN. Up until this update AdGuard wasn’t an exception — but it will be now. Without going into technical details (they are available by the link above), let’s just say we found a way to make AdGuard and Wi-Fi calling friends.

[Improved] Added fallback DNS servers #2490

If for whatever reason your current DNS server becomes unavailable (doesn’t matter whether you use one of the servers from the list we provide or a custom one), AdGuard uses your system default DNS as a fallback server. Not an ideal solution, so now you can indicate any DNS server (or even multiple) to be used as a fallback. Go to “Advanced Settings > Low-Level Settings” to set it up.

Common

UI

[Added] Adaptive icon support #1548
[Added] Context menu to the license activity #1885
[Added] CoreLibs version to the About screen #2255
[Added] Background / foreground CPU time to the battery usage screen #2355
[Added] Total requests count #785
[Added] Toggle to turn on/off all user filters & whitelist for debugging #1335
[Added] Toast notifications to inform user why an item is disabled/greyed out #699
[Added] Indicator for when Stealth mode rules were applied to a request or response #2365
[Added] Error notification when exporting logs and system info with an empty file name #2462
[Changed] Filter settings have been reworked #1806
[Changed] About screen has been reworked #797
[Changed] Filtering options in Filtering log have been redesigned #2265
[Changed] License status notifications #2460
[Changed] Old notification text in HTTPS Filtering #2510
[Changed] The app UI is distorted in Arabic #2547
[Changed] “Data saved” value goes beyond the bounds #2549
[Fixed] Menu items disappear on the promo screen #2504 - [Fixed] Filter names have been specified for all filtering rules in Filtering log #2320
[Fixed] Main stat doesn’t change after resetting the statistics #2506
[Fixed] A filter group doesn’t get enabled if a filter is enabled from search #2590
[Fixed] Adding AdGuard widget doesn't work correctly #2484
[Fixed] Crash after search in Apps Management #2508
[Fixed] Battery consumption displayed wrong #2487
[Fixed] Browsing security event has wrong status in Filtering Log #2512
[Fixed] “Content Blocking" menu is missing #2599
[Fixed] Custom launchers break widget's size #2521
[Fixed] Incorrect notification is shown after checking for updates when there is no connection #2502
[Fixed] Protection is restarted when enabling a filter group with all filters disabled #2589
[Fixed] Empty Stealth mode parameters in Filtering Log #2495
[Fixed] Landscape orientation UI errors #2612
[Fixed] Filters in disabled groups receive updates #2581
[Fixed] Recurring warning notifications in Apps Management #2481
[Fixed] “I agree with Terms" button is not visible on screens with small resolution #2571
[Fixed] Incorrect animation #2597
[Fixed] Outdated filters can't update their descriptions #2486
[Fixed] Extra icon in Custom filters group section #2592
[Fixed] Protection is not restarted after enabling the Custom filters #2517
[Fixed] Side menu is always opened after restarting the app #2479
[Fixed] Social media filter gets disabled if you skip the onboarding screen after the update #2545
[Fixed] Support menu bug #2561
[Fixed] Switches randomly change their states after screen rotation #2559
[Fixed] The license page does not fit on the screen #2464
[Improved] An icon added for the recommended filters on the filter groups screen #2556
[Improved] A placeholder has been adopted for the current year #2440

Networking

[Fixed] AG connecting to a proxy which is not added yet #2543
[Fixed] Connection is lost when DoH/DoT is enabled #2475
[Fixed] DNS appears in Apps management search results #2505
[Fixed] IPv6 upstream addresses are used for default DNS providers #2477
[Fixed] No internet connection via root proxy on T-mobile #2428
[Fixed] Wrong custom DNS server name for DOH stamps #2514
[Fixed] ConnectionFinder finds wrong connection #2450

CoreLibs & Crash

[Improved] CoreLibs updated to 1.3.207 #2621
[Changed] CL version added to the state file #2509

[Fixed] Crash after settings importing #2503
[Fixed] Crash in the Apps Management settings #2308
[Fixed] When selecting a quick install, automatic crash reporting doesn't turn on #2497

Other

[Added] AdGuard DNS-over-HTTPS servers to DNS providers #2379
[Added] Firewall events to Filtering log #1214
[Added] Stealth mode parameters included to the report link #2370
[Added] Filtering log extended search feature #1369
[Added] 1x4 widget with current statistics #576
[Changed] Localizations have been updated
[Changed] The view of VPN dialog #2636
[Changed] Comments in Filter editor can now be added and deleted individually #2228
[Fixed] Compatibility issues
[Fixed] Localization issues
[Fixed] Stealth Mode settings persist in Filtering Log requests after license reset #2534
[Fixed] “Disable Whitelist” doesn’t work #2218
[Fixed] Requests highlighting issue #2474
[Fixed] HTTPS Filtering settings bug #2582
[Fixed] Importing settings from a file does not transfer filter settings #2513
[Fixed] Infinite loading after download fail #2560
[Fixed] Magisk Manager unable to pass SafetyNet check with AdGuard enabled #1894
[Fixed] Settings backup does not contain app settings #2492
[Fixed] Cookies TTL can’t be 0 #2548
[Fixed] AdGuard icon is missing on some devices after 2.12.223 update #2148
[Fixed] An issue due to some providers relying on their DNS servers to provide IPv4-mapped addresses #1884
[Improved] You can now clear stats for a single app #803
[Improved] You can now sort apps on the Firewall screen #384
[Improved] Filtering rules limitations #2401
[Improved] Device's current SDK level is now sent with check update requests #2328
AdGuard for Android 2.12.250
Release date: January 30, 2019
Many of you already know, AdGuard team is working hard on developing AdGuard for Android v3.0. It has been taking a long time, but we are nearing the release. This small update serves a single purpose: prepare the current version so that the big update goes smoothly. No other changes — we saved them all for the big day :)
One thing to mention: starting with AdGuard for Android v3.0, we will drop the support for devices with Android OS version 4.x. Sadly, they are simply becoming too old.
AdGuard for Android 2.12.247
Release date: October 18, 2018
We know it’s unusual for us to push an update directly to release channel, but this time we decided to do so nontheless. What was planned to be a quick hotfix, turned out to be an update that touches on several different issues.
[Fixed] Auto-update check is not perfrormed properly #2153
[Fixed] ENOENT error while exporting a log file #2162
[Fixed] UC browser does not support HTTPS filtering #2183
[Improved] Dnscrypt-proxy has been updated to v2.0.17 #2168
[Improved] DnsCrypt servers list has been updated #2171
[Changed] Compatibility fixes
AdGuard for Android 2.12.233
Release date: September 26, 2018
Nobody likes to roll out a hotfix just a week after the release, but sometimes there's no other choice. We took this opportunity to not only fix the problem but also to update the CoreLibs filtering engine and make a handful of other useful changes.
[Fixed] AdGuard does not restart after auto-pause on older Android devices #2127
Turned out, on some older devices (Android 6 and older) AdGuard didn"t restart after the protection got paused automatically (say, on the network state change). This affected a large enough portion of AdGuard users to justify an immediate update.
[Changed] Localizations has been updated
[Fixed] An error occurring during the license activation #2134
[Fixed] Expiring certificate issue on 32-bit Android devices #2128
[Improved] Upgrade CoreLibs to 1.1.53 #2141
AdGuard for Android 2.12.223
Release date: September 18, 2018
v2.12 is filled to the brim with new features. New filtering engine takes ad blocking quality and performance to a new level, improved notification settings and automation options will make the communication with the app easier, and freshly added DNS functionality will satisfy even the most demanding of users.
Consider this version as a bridge to the big 3.0 release which surely come soon, with even more cool stuff!
[Added] Integration with a completely new filtering engine (CoreLibs) #1869
We have been working hard on integration with CoreLibs for a long time, and we are extremely proud and happy to finally switch to it. The importance of it has been mentioned before multiple times, including a post in our Blog. We recommend reading it for more details, but if you only want a brief summary, here it is: CoreLibs is a cross-platform filtering engine that will substitute previously used platform-specific engines. Thanks to it, the performance rate will increase drastically (twofold for AG for Android, according to our tests!). The unified filtering engine also means shorter development cycles, we no more need to account for the nuances of this or that OS. And finally, many features that only existed for one OS can now be easilly transfered to AG products for other platforms. So expect things like Stealth Mode on Android! [Added] Self-hosted automatic crash reporting system to catch the app crashes #1908
New filtering engine (see above: CoreLibs) means that there may be more crashes than usual, and to address them quickly we introduce integration with automatic crash reporting system - Sentry. It will automatically send crash reports with all the information that developers need to fix the problem. For more details on what exactly is being sent, read our Privacy Policy. Just have a look at how many issues have been dealt with already thanks to it:
[Fixed] Crash when running the TCP/IP stack #1984
[Fixed] Crash caused (possibly) by a huge number of apps installed #1659
[Fixed] Crash on opening app's settings with Assistant #1833
[Fixed] Crash if protection fails to stop in 60 seconds #1927
[Fixed] Crash: java.lang.SecurityException: Destination must be on external storage #1978
[Fixed] Crash: The specified child already has a parent #1956
[Fixed] Crash: Unable to import null to preferences #1987
[Fixed] RuntimeException: The TCP/IP stack has finished its work unexpectedly #1970
[Fixed] Timeout crash due to slow Magisk initialization #1939
And you can help us to track down and fix even more, so please keep it enabled if you are on the beta update channel.
[Added] Notification channels #1561
This is something that will only be available to users of Android 8 and newer. We have divided our notifications into six categories: Protection Status, License Status, Updates, Outbound Proxy, Firewall and Other. You can not only enable/disable each category separately in the system notification settings, but also manage each of them by tapping on the category name. This opens wide door for customization. Depending on what is important for you and what is not so much, you can, for example, turn some of them silent while keeping the sound for the rest.
[Added] Long press app shortcuts #1111
Taking advantage of the feature available to users of Android 7.1+, we add long tap shortcuts. As it is obvious from the name, you just need to tap and hold on the app icon to bring up a list of fast actions. Among them are toggling the protection status, fetching AdGuard Assistant or checking for updates.
> A note — you can drag any of these options to create a widget. There are also two smaller buttons for opening app’s system settings and creating an AG widget, respectively.
[Added] Automation settings (Tasker, AutomateIt, etc) #1896
[Added] Extended Tasker API: proxy settings #1972
Hopefully, you’ve already had a chance to test the new tasker API. This beta will give you something new to play with: proxy settings. Two new actions become available: proxy\_state and proxy\_default. The first one enables/disables the outbound proxy, the latter sets any of the previously configured proxies as default. More detailed description of these actions is in our KB article.
A lot of users asked us about ways to automate some of AdGuard’s functions, like disabling protection when a certain app gets launched. Finally, we deliver, and the in-depth guide to automating AdGuard is already available in our Knowledgebase.
[Improved] DNS functionality #1831
There are two different improvements hiding behind one task here. First one is, we have upgraded DNSCrypt proxy to version 2. It is a general improvement, v2 is superior to v1 in speed and security. The other change is a bit more interesting: we’ve added “DNS over HTTPS" (DoH) support. This is an experimental protocol that is more secure due to increased protection against things like eavesdropping and man-in-the-middle attacks. You can easily find more technical information about DoH on the internet, but if you don’t want to bother just trust us: it is a nice thing to have :)
[Added] More DNS providers added to the “known by default" list #1811
The more the better, right? Right! This includes such popular providers as Cloudflare Public DNS, FreeDNS and many others. Find one that suits you best!

Networking

[Added] com.alseda.ideabank app - add to the HTTPS filtering exceptions #2082
[Changed] Protection startup timeout is not used anymore when the VpnService requires preparation #1934
[Changed] pref.vpn.disable.reconfiguration is now checked for all Android versions 7+ #1918
[Changed] If configured, outbound proxy must be used even if ad blocking is disabled for an app #1959
[Fixed] Fix DnsCrypt parse scripts #2072
[Fixed] AdGuard does not pause itself properly when a third-party VPN is started #1954
[Fixed] AdGuard is disabled after network change event #1846
[Fixed] AdGuard is not capturing the mobile data usage correctly #1856
[Fixed] AdGuard misbehaves when it's set as always-on and it receives a connectivity change event #1844
[Fixed] AdGuard protection is not restored after being revoked by another VPN #1944
[Fixed] Unable to access internet with DNSCrypt enabled #1924
[Fixed] AdGuard does not use the fallback DNS server when the primary server times out #2042
[Fixed] Protection doesn't restart when changing mode of HTTPS filtering #2011

UI

[Added] Bulk change option for “HTTPS filtering" preference #2010
[Added] A checkbox that disables Assistant and Filtering Log #1808
[Added] "Terms of Use" step when the app is started for the first time #1890
[Added] Marketing consent checkbox to the "Request trial" dialog" #1886
[Added] Bulk edit option for ad blocking preference #1974
[Added] Information about non-filtered connections to the filtering log #1730
[Added] A custom file picker #1935
[Added] Add "Enable all" and "Disable all" to User Filter selection options #1925
[Added] A warning about moving the certificate to the system store #1824
[Added] A permanent notification when HAR, pcap or "record everything" logging level is enabled #1450
[Changed] User is now asked for confirmation before importing the settings file #1901
[Changed] HTTPS filtering warning is not showed anymore on Android 7+ when the certificate is in the system store #1855
[Changed] “Update available" notification made permanent #1921
[Changed] Hide export option when User filter is empty #1995
[Fixed] "I agree with Terms" button is not visible if scale is enlarged in Android settings #2036
[Fixed] The toggle button icon missing from the notification drawer on Huawei P10 Premium #1996
[Fixed] Send feedback doesn't save screen state after rotating #2080
[Fixed] Bug in the AppsManagement screen #2101
[Fixed] App UI is distorted in Arabic #1945
[Fixed] AdGuard Notification Separator/Dot Size Issue on Samsung #1826
[Fixed] User login/password is missing from the HTTP proxy settings #1872
[Fixed] Wi-Fi icon disappearing when AdGuard is restarted #1861

Other

[Added] Add Joey for reddit to browser list #2067
[Added] An option to reset HTTPS filtering's whitelist or blacklist to default #1707
[Added] Hindi [hi-IN] localization #1998
[Added] An option to renice the AG process priority #1812
[Added] A new parameter for web reporting tool integration #1948
[Changed] Remove comments from HTTPS white/black list for CL configuration #2044
[Changed] Start using ProcessHealthStats instead of scanning proc-stat for calculating AdGuard's own battery usage #1967
[Changed] adguard.com/forward is now used for the website links #1875
[Changed] Amazon AppStore build got rid of #1893
[Changed] The way conflicting apps are being detected has been changed #1823
[Changed] Translations moved from Spanish [es-ES] to Spanish [es] locale #1900
[Changed] Users with an active subscription will not be notified anymore about the upcoming license key expiration #2105
[Fixed] Certificate moved to the system store is not accepted on Android 8.1 #2108
[Fixed] A few CoreLibs bugs
[Fixed] Samsung Pay in South Korea won't work when any VPN is running #1209
[Fixed] The app hangs when press cancel button in bulk change setting of apps management #2056
[Fixed] HTTPS whitelist entries can't be deleted if there is a request in search box #2041
[Fixed] HTTPS whitelist entries not saving #2026
[Fixed] Importing a backup from the stable version breaks DNS settings #2034
[Fixed] Compatibility issues
[Fixed] AdGuard can't detect when certificate was removed using Android settings #1830
[Fixed] AdGuard crashes when launching Assistant on Android 4.2.2 #1842
[Fixed] Can't export User Filter on Android 8.1.0 #1865
[Fixed] Some rules in the User filter keep working after being disabled #1881
[Fixed] Error while importing settings #1955
[Fixed] Slow initialization of Magisk upon the device boot on Samsung S9 #1852
[Fixed] Moving the certificate does not work with Magisk #1928
[Fixed] Moving the certificate to the system store does not work on some devices #1827
[Fixed] NullPointer exception in the onTrafficChanged method #1938
[Fixed] T-Mobile counts traffic as Tethering when VPN is active #1741
[Fixed] The AdGuard app is filtered in the manual proxy mode #1958
[Fixed] AdGuard process kills itself unexpectedly #1887
[Improved] Battery stats are counted properly now #1915
AdGuard for Android 2.11.81
Release date: April 17, 2018
This update is on a larger side, just judging by the number of entries in the changelog. Two ‘whales’ of this release are both integrations with an external app: AdGuard Assistant and web reporting tool. Assistant will help you manage filtering in apps and browsers from the notification shade, and reporting tool is what it’s called — a convenient way to report any missed ads, false positives and such.
[Added] Extended AdGuard notification — an "Assistant" button #1614
There are now two action buttons in the AdGuard notification. One is “Pause”, which pauses the protection upon tapping (tap again on the notification to resume it), but the more interesting one is “Assistant”. When you tap it, a list of recently used apps and websites will show up. Tap on any of them for more options, like opening filtering log, denying the app network access (or whitelisting/blacklisting in case of a website), or proceeding to the app/website-specific settings screen in Apps Management.
We believe this will save you quite a bit of time, especially if you are an active user and often find yourself in a need to pause protection, whitelist a website etc. In fact, we tested it ourselves and found it extremely convenient! :)
[Added] Integration with reporting web tool #1615
This feature is already familiar to AdGuard for Windows, AdGuard for iOS and AdGuard browser extension users. Basically, this is a way to report any filtering-related issue on a page: missed ad, false positive etc. To do so, go to app’s side menu and select “Report an issue”. Instead of an immediate “Send a message to support” screen, you will get a dialog to select the type of issue. Choosing one of the filtering-related issues will open a web page and a wizard will take you step by step through the process of filling in the required information. Don’t worry, most of the fields will be pre-filled by the AdGuard app!
This way of reporting missed ads and such is beneficial to both filters developers and users — the former will get all the information they need to fix the problem, and latter will be sure that the issue will be resolved in the shortest amount of time possible.

Ad blocking

[Added] YousList to the list of available filters #1803
[Changed] ExtendedCss has been updated to v1.10 #1787
[Fixed] Added support for $network exceptions rules #1636

Networking

[Changed] "ExtendedCss" module has been upgraded to v1.0.9 #1633
[Changed] Auto-proxy is reconfigured now on network state change #1630
[Changed] OpenNIC server address has been updated #1632
[Changed] NXDOMAIN answer (domain does not exist) is now used instead of 127.0.0.1 #1582
[Fixed] AdGuard is not capturing the mobile data usage correctly #1665
[Fixed] App traffic is blocked on Android 4.x even when it should not be filtered at all #1715
[Fixed] Manual VPN connections crash when AG is enabled #1022
[Fixed] Error on VPN reconfiguration: failed to bind TUN pcb #1634
[Fixed] IPv6 filtering does not work on Oreo 8.1 + Magisk #1679
[Fixed] Firewall temporary allowance notification is not displayed #966
[Fixed] AdGuard exposes an open port #1640
[Fixed] DNS proxy server is now restarted on network change regardless of whether VPN reconfiguration is enabled or not #1780
[Fixed] VPN reconfiguration has been disabled by default on Samsung + Oreo #1774
[Fixed] Due to IPv6 filtering in proxy mode Facebook believes that IPv6 is accessible #1738
[Fixed] IPv6 connectivity is not enabled on protection stop if 'pref.proxy.block.ipv6' is enabled #1457
[Fixed] Error building the VPN tunnel on the network change on Huawei Mate 10 #1594
[Fixed] Ipv6 address lookup error #1786
[Fixed] Using DNSCrypt in AdGuard blocks internet connection #1562

UI

[Changed] Notification action text color #1784
[Changed] HTTPS filtering lists have been divided into pre-defined and user-defined #1748
[Changed] 2017 to 2018 #1682
[Changed] "Blocked ads" and "blocked trackers" have been separated in the app stats #1590
[Changed] "Ad blocking" is now grayed out setting in per-apps settings if "Block ads in apps" is disabled #1484
[Fixed] Certificate state styles in HTTPS filtering settings #1551
[Fixed] Filtering log search issues #1610
[Fixed] Current language is displayed as the default language, instead of the system language #1588
[Fixed] Visual glitch with Amazon version activation #1603
[Fixed] Filtering log fails to refresh after being cleared #1728
[Fixed] Pause/Assistant buttons' look on Xiaomi #1739
[Improved] IconCache now handles non-bitmap icons #1789

Other

[Added] New localizations — Spanish (Latin), Danish, Arabic #1583 , #1662- [Changed] AdGuard DNS over IPv6 has been added to the list of regular DNS servers #1799
[Changed] Level3 has been removed from the list of available DNS servers #1800
[Fixed] Beta build doesn’t have "beta" update channel by default #1377
[Fixed] While app is in Russian, preview opens an EN version of Knowledge base article instead of RU #1624
[Fixed] FAQ articles are not accessible when AdGuard is switched to Japanese #1622
[Fixed] First line of imported user filter rules is always interpreted as an actual rule #1717
[Fixed] Disabling net access for Android OS does not work #1498
[Fixed] Invalid file types can be imported into the UF #1301
[Fixed] AdGuard does not restart automatically after OpenVPN is disabled #1628
[Fixed] "Remove certificate" works incorrectly without root #1759
[Fixed] AdGuard won't start on boot on some Oreo devices #1727
[Fixed] Autopause does not work when there's no internet connection #1749
[Fixed] "Move certificate to system store" doesn’t work #1763
[Fixed] Crash while exporting the log file #1779
[Fixed] Google Backup does not work on Wi-Fi in VPN mode #1587
[Fixed] It takes too long to stop a local server in manual proxy mode #1746
[Fixed] No HTTPS filtering status flag in reports #1740
[Fixed] Wi-Fi calling doesn't work with T-Mobile #1570
[Fixed] AdGuard stops working when its language is set to Arabic #1765
[Fixed] Compatibility issues
AdGuard for Android 2.10.176
Release date: November 28, 2017
A somewhat "unexpected" AdGuard for Android update — much smaller than a usual one. It contains a couple of hotfixes, which were basically the reason to release this version, alongside several quality of life improvements like separate WiFi/Mobile statistics in "Apps Management".
[Added] Separate Wi-Fi/Mobile stats #1542
Here we introduce one 'visual' change: separate Wi-Fi/Mobile stats on the 'Apps Management' screen. There's now a drop-down menu on the statistics screen that allows you to choose between displaying stats for Wi-Fi, Mobile or all traffic.
[Fixed] Wakelock (caused by GCM_RECONNECT) prevents devices from sleeping #1547
A self-explanatory one. There was an annoying bug with "Wakelock" that prevented the device from entering sleeping mode.

Other

[Added] Danish Adblock list filter #1523
[Changed] Translations for 'Advanced settings' screen have been updated #1507
[Fixed] Protection is restarted when you open HTTPS filtering menu #1605
[Fixed] Crash in Amazon version #1608
[Fixed] Compatibility issues
AdGuard for Android 2.10.164
Release date: November 3, 2017
We usually try to avoid having “inbetween” major updates, but this time is different. There were not as many big changes to justify labeling this version 2.11, but some of them are still very important so we couldn’t just keep shelving them.
A couple of serious bugs have been fixed: misbehaving “Protection” button on Android 7, certificate detection issue and “broken” whitelist. You’ll find a lot of minor fixes too, plus updated translations.
[Fixed] "Protection" button misbehaves The AOT (ahead-of-time) compilation method on Android 7.x could remove whole chunks of AdGuard code on its optimization step. This led to various problems, including the persistence of VPN connection despite the disabled protection.
[Fixed] Certificate detection issue We have changed the algorithm of user certificate detection and it now works more correctly.
Ad blocking
[Fixed] Whitelist is not working
Network
[Fixed] Unexpected exception in the onUdpConnectRequest handler [Fixed] Automatic proxy (with root) is starting very slowly [Fixed] Disabling net access for Android OS does not work [Fixed] Moscow subway Wi-Fi cannot work with DNS filtering enabled [Fixed] Disabling internet access for Android OS does not work [Fixed] Internet is not working after switching from Local HTTP proxy(root) to VPN
UI
[Fixed] Minor UI issue in traffic stats screen [Fixed] The application is not fully translated after changing the language [Fixed] Proxy port more than 32767 is converted to 0 [Fixed] Incorrect calculation result of "App Details "screen [Fixed] Protection restarts when exporting settings [Fixed] Import of previously exported settings is buggy [Fixed] The visual glitch with 2 active DNS servers is back
Other
[Changed] Japanese translation [Changed] Traditional Chinese translation [Changed] Several compatibility fixes [Fixed] The header is not written after the HAR file rollover [Fixed] AG should request write_external_storage permission in runtime when it's required [Fixed] Proxy mode with Magisk 14.2 takes 2+ minutes to enable [Fixed] bccard.com, local.gosi.go.kr are not accessible with the HTTPS filtering enabled [Fixed] Alisa is broken in Yandex.Browser alpha
AdGuard for Android 2.10.108
Release date: September 29, 2017
Hi everyone! AdGuard for Android has always been one of the most rapidly evolving AdGuard products, and it stays that way. Today, we introduce to you the new version, featuring some of the biggest and potentially the most important changes in a while: significant increase of the filtering speed, outgoing proxy and TOR support, DNS filtering, DNS encryption and everything cool that goes alongside it. More details ahead!
[Added] Improved outbound proxy support
There is now a separate section for outbound proxy configuring in the main section of "Settings" menu, just above the "Advanced". You can now add, configure and use multiple proxies through AdGuard. Please note that only filtered apps' traffic is routed through AdGuard (which means it will only work for browsers in the free version). Also, DNS requests are not routed through proxies.
One related thing worthy of a separate mention: now it is very easy to set up Tor proxy via Orbot. Once you install Orbot, there will be a configured Tor proxy at the ready in the AdGuard proxy settings. Just enable Orbot in the notification bar, and you are good to go!
[Added] Improved DNS settings
We have also allocated a separate screen for DNS settings, you can find it in the side menu. You can add a custom DNS server, or select any public DNS provider from our list, including AdGuard DNS servers. No matter what server you choose, you can enable DNS filtering there.
Another great feature is DNSCrypt support. It is a special protocol that makes your DNS traffic secure, and we recommend to choose a DNS provider that supports DNSCrypt (by the way, AdGuard DNS does!).
[Added] Integration with the new network stack [Added] Integrate common URL filtering library
These words may appear a tad too techy, so let us explain. Behind the ad blocking process of every AdGuard app on every platform lies the same algorithm. This algorithm - network stack - has been significantly improved recently, its performance has been increased up to 3 times compared to old numbers. In this version we integrate the Android app with it and also with our new filtering library.
[Added] Logs and system info export
This is a new addition to the 'Advanced settings'. Basically, after you tap it, the app grabs all current logs, packs it into an archive and asks you where to export it. It will be useful mostly for the forum and GitHub frequenters - for example when you report a bug and the support team member asks you to collect some logs. But it also can be helpful in certain tech support cases.
[Added] Battery usage stats screen
Historically, questions about AdGuard battery usage are among the most frequently asked ones. Sadly, Android distorts the battery consumption breakdown, attributing other apps' traffic and battery consumption to AdGuard. We've even written a detailed knowledgebase article that explains this issue. To mitigate the misconception, we added a new screen called 'Battery usage'. You can access it by tapping on the battery icon in the top right corner of the main screen. Inside you will find a chart that shows the AdGuard battery resource consumption within the last 24 hours, with an option to get more detailed hour-to-hour data by tapping on the dots on the chart. Besides that, there's also a numeric breakdown of the relevant data and a short technical explanation.

Adblocking
[Added] Add support for browsers cloned by the "App Cloner [Added] Add EasyList Lithuanian filter [Added] /deep/ and ::shadow selectors support [Changed] Upgrade "ExtendedCss" module to v1.0.8 [Changed] Optimize DNS filtering statistics write [Changed] Allow multiple filters to be enabled as language-specific at once [Fixed] Unknown rule options [Fixed] Native stack is not properly closed sometimes when AdGuard is auto-restarted [Fixed] AdGuard does not resume protection occasionally
Networking
[Changed] The iptables rules have been reworked [Changed] Add new filtered ports [Changed] AdGuard now can handle compressed responses when downloading filters [Fixed] Iptables redirect doesn't work for IPv6 [Fixed] Reinitialize VpnService when newly installed app should not be filtered [Fixed] Captured HAR is invalid [Fixed] Adguard cannot handle huge chunks properly [Fixed] Cryptography-code error [Fixed] No internet connection when DNScrypt and "record everything" logging level are enabled [Fixed] NPE in DnsUpstreamServer [Fixed] Alpha build segfaults when accessing some websites [Fixed] Old certificates are not purged properly [Fixed] The Onion (theonion.com) does not work with AdGuard enabled [Fixed] Error while generating a domain certificate [Fixed] If IP address is blocked by ISP, it is impossible to connect to the site even via proxy [Fixed] No internet connection after disabling DNS settings [Fixed] Auto Proxy mode causes Wi-Fi Calling to fail for Verizon Wireless [Fixed] When switching from VPN to Auto Proxy, Protection "restarts" but mode doesn't change [Fixed] Iptables redirect doesn't work for ipv6 P2 [Fixed] Opera browser now targets SDK level 25 and does not trust user certificates
UI
[Added] "Add new rule" button is missing in user filter [Added] Open links in a webview [Added] Open AdGuard by long-pressing on the tile icon [Added] Add an option to search in the filtering log [Added] Round icons support for Android 7.1 [Added] Add a checkbox "Overwrite existing rules" to the import user filter dialogue [Added] Show filters which blocked an element in the Filtering log [Added] Export logs and system info [Added] Trim string when user enters new domain or rule into Whitelist/User filter [Added] Export/import of all profile's settings [Added] An annotation to "Google Play services" app details [Added] Custom DNS ports support [Changed] Rework the HTTPS filtering settings section [Changed] Dialog windows should have min width [Changed] Change "Filtering log" status label text [Changed] Change AdGuard notification text 6.0+ [Changed] Contents of state.txt file (the one attached to support messages) [Changed] French translation has been updated [Changed] 'Adguard' to 'AdGuard' in all translations [Changed] AdGuard notification text on Andoird 6.0+ [Changed] Some wording has been updated across the app [Changed] Minor UI changes [Fixed] Firewall UI inconsistency [Fixed] Deleting a single rule from a search result removes all rules from the User Filter [Fixed] First string is imported as a rule even if it is a comment. [Fixed] Subscription status description is misleading [Fixed] Few issues with the new DNS sub-menu section [Fixed] Wrong padding in the DNS section [Fixed] Spelling issue in DNSCrypt [Fixed] Displaced titles in the 'Statistics' tab of the 'DNS' screen [Fixed] The search request is reset after keyboard is closed [Fixed] Make the log stop scrolling when reading it [Fixed] Incorrect DNS is displayed when you set up a custom DNS [Fixed] AdGuard doesn't memorize the selected DNS server [Fixed] Proxy warning in apps management can be seen when changing tabs [Fixed] Scrolling on the DNS screen works incorrectly [Fixed] FAQ is displayed in the wrong language on Android N [Fixed] Side menu "Settings" button doesn't work as intended [Fixed] DNS requests blocking is not enabled by default when you toggle on the main DNS switch [Fixed] Main switch in HTTPS settings is not being toggled by tapping on the label [Fixed] Toast messages are shown in system language, not in app language [Fixed] Scrollbar is missing at both DNS server lists (regular and DNScrypt) [Fixed] Headers are not translated after switching the language [Fixed] Apps are missed from apps management statistics in proxy-mode [Fixed] "Block ads in all apps" is not checked after you activate the license key
Other
[Added] "Request trial" should require an email [Added] Add an annotation to "Google Play services" app details [Added] AdGuard has been added to Google's apps backup [Changed] Increase the trimming limit we use for request URLs [Changed] Beta build should have "beta" update channel by default [Changed] .apk file has been removed from the app cache after the update [Changed] Add AdGuard version to both settings and logs export files [Fixed] Don't ask for root access when crashed [Fixed] Missed separator in filtering log between ads= and domain name [Fixed] Apps management section is not loaded in the background [Fixed] Сrashes on Android 6.0.1 [Fixed] Unnecessary exception in the log file [Fixed] App freezes and can't be restarted [Fixed] AdGuard crashes if you open ws:// or wss:// request in the Filtering log [Fixed] EV certificate filtering checkbox rarely works [Fixed] Advanced settings aren't applied on protection restart [FIxed] Crash on Android v4.x [Fixed] Update crash on KitKat and Lollipop [Fixed] Individual apps settings aren't exported [Fixed] Crash while trying to clear Firewall stats with AG disabled [Fixed] AdGuard is not listed in Google's apps backup [Fixed] Apps Management's "All time" tab is very slow after clearing stats [Fixed] Wi-Fi calling Verizon issue [Fixed] Custom DNS might not work in some circumstances
AdGuard for Android 2.9.136
Release date: July 24, 2017
Some users started to encounter a network error while using applications (YouTube, Google Plus, Facebook Messenger and some others). This update is a hotfix for that issue: #1334
AdGuard for Android 2.9.135
Release date: July 5, 2017
The new version is not excessively rich with new additions and other changes - more will come in v2.10 and, eventually, in AdGuard v3.0. However, there is still one big highlight - we have vastly reworked and improved the User filter. Read below to find out the details.
[Improved] The user filter has been reworked #1279
Any experience of interacting with the previous incarnation of User filter could not be described with any other word but 'miserable'. It used to be clunky, unresponsive and slow. A lot has changed in this version.
First, the new design. It has become much cleaner.
As you will see, we have combined all of the control elements - add a new rule, clear the filter, edit the filter, import and export - under one toolbar menu.
Second, you now have an option to enter the so-called "edit mode" that brings up the multiline text edit area. It is very handy if you need to copy/paste/delete multiple lines of text at once, or just edit several rules in a row without clicking on each and every one of them.
Finally, the general way it looks. Rules are color-differentiated depending on their type, comments are distinctively visible and every rule can be disabled and enabled back without having to delete and re-create it.
If you have any interest in creating and maintaining a list of your own rules, you are going to, without any doubt, welcome these changes. We, personally, are very excited! :)

Ad blocking

[Added] Juvander's Adblock List #1225
[Changed] Minor memory optimizations #1181
[Changed] The range of the $$ rules was increased #1185
[Changed] The way we handle rules with $empty modifier #1274
[Fixed] Rules constructor ignores referer #1221
[Fixed] $network modifier doesn't work #1268
[Fixed] Firefox nightly 64-bit is not recognized as a browser #1257
[Fixed] CPU overuse issue caused by repeating requests to a tracking server #1179

Networking

[Changed] The HTTPS exclusions list has been updated
[Changed] HTTPS is not filtered any more for Nougat targeted apps without network_security_config #1286
[Fixed] Nougat auto-pause issue #1202
[Fixed] SHA-1 intermediate issue #1178
[Fixed] App preview does not work #973
[Fixed] Android O compatibility issues #1227
[Fixed] VPN + IPv6 issue on Android 4.4.2 #1267
[Fixed] IPv4 mapped addresses bypass VPN #1026
[Fixed] The first packet of a connection processing delay #1192
[Fixed] AdGuard does not filter HTTPS connection with TLS 1.0 servers #1195
[Fixed] Reconfiguring iptables on package add/replace leads to no internet #1245
[Improved] Session resumption was implemented using session IDs #1238

UI

[Added] Portuguese (PT) and Persian language support #1139, #1189
[Changed] Subscription status description wording #1191
[Fixed] Filtering Log toolbar layout #1180
[Fixed] Crash on network type changes #1272
[Fixed] Typos and punctuation mistakes #1159, #1186
[Fixed] User filter import doesn't work on Nexus 9 #1300
[Improved] Localizations has been updated #1290

Other

[Changed] Yuzu browser has been added to the list of browsers filtered by default #1285
[Fixed] Multiple compatibility issues
[Improved] Logging in case of a critical error #1216
AdGuard for Android 2.9.70
Release date: April 25, 2017
This is arguably the biggest we've changed our app since v2.5 or even since the introduction of the new design back in AdGuard v2.0. Some of these changes were meant to be introduced only in the 3.0 version, but we couldn't wait any longer :) Significant changes to UI, the long hoped-for filtering log feature, other new options - all this and much more awaits you in this update.
[Improved] New app navigation system #969
Alright, we realize that when it comes to changing the design, there's going to be a controversy. There will always be those who find it better than the old one, and there will always be those who don't. Our hope the majority of users will find the new navigation system more convenient.
What exactly has changed? There is now a side menu, which will help to navigate through the app more easily. Besides that, we can finally utilize the context menu in the top-right corner, you can find an example of this in 'Apps Management' section. By the way, 'Apps management' will now include all Firewall settings as well. Having these two sections together at the same time felt excessive and confusing.
[Added] Filtering Log #11
Oh, boy. Anyone who has ever tried to check what's being filtered/blocked knows the struggle of inspecting AdGuard's log file. It was the only way, and I doubt there is a single user who found it convenient. No surprise, as it was initially meant to be used by filters developers only. We were thinking: 'Why would anyone want to see on such deep level what do their apps do?'. We had been completely ignoring tech savvy people who do care about it and do want to have a complete control of what is going on on their device.
We'd like to apologize for this. We should have implemented filtering log functionality a long time ago. Well, better late than never. The filtering log has arrived, come and see for yourself. We don't expect to hit the nail on the head on the first try, so your feedback on what's lacking and what you can live without is invaluable.

Ad Blocking

[Added] $network basic rules modifier #1032
[Added] Support for exception rules #815
[Changed] The behavior of the third-party modifier #891
[Changed] Websites cache is now suppressed after filters change #946
[Fixed] $replace rules aren't applied to .m3u8 files content #1060
[Fixed] Regular expressions with $ symbol aren't processed properly #1027

Networking

[Added] An option to not filter HTTPS on websites with 'Extended Validation' certificate #934
AdGuard for Windows users are familiar with this option already. Extended Validation SSL certificates grant that the owner of the certificate has gone through a very strict process of verification. The trust for such certificate owners is much higher - those are usually banks, other financial organizations etc. Often times there are zero or close to zero ads on their websites, and filtering them is excessive anyway - it only increases the chance to break something useful.
[Changed] VPN autopause is now disabled by default for new Android devices (Pixel, Nexus with Nougat) #1000
From the beginning, the VPN autopause functionality was not 'a feature'. It is a workaround for some known Android issues and bugs. For example, tethering could not work along with a VPN, or AdGuard's network access could be denied in power saving mode.
It seems that all these issues are sorted out in the newest Android devices, so we have disabled autopause functionality for them. You can turn it back ON in AdGuard's low-level settings if needed.
[Fixed] HTTPS filtering in Nougat-targeted apps #979
[Fixed] Amazon license check hangs while doing the background check #1121
[Improved] Active proxy connections closing time was reduced #990
[Imporved] AG styles are protected from disabling now #947

UI

[Added] Bulk change functionality for the Apps Management section #1063
Available from the context menu that we have already mentioned above, it grants a fast and easy access to the most common settings that can be applied to all apps at once.
[Added] A new advanced preference: a list of networks which LAN should be filtered for #1154
Initially, there was just a bug that prevented AdGuard from filtering ads in Moscow subway Wi-Fi network. Turned out that wi-fi.ru is located inside of a LAN, which we exclude by default. Rather than making an exception for this particular network, we decided to choose a more broad approach and create a new preference.
[Changed] Aggregate all removed apps stats in one item #806
[Changed] 'Blocked' pages markup was updated #1029
[Changed] Translations were updated #1138
[Changed] 'Notification without icon' mode is made default for 'Notification icon' setting #988
[Changed] Locale-specific number format is used now on the main screen #1117
[Changed] 'Removed apps' package icons now appear inactive in the apps list #1105
[Fixed] Data stats are shown for AdGuard app in Apps Management #889
[Fixed] 'Learn more' button link resolves to an undefined page #1113
[Fixed] FAQ UI is broken on Android 5.1.1 when you highlight the text #1097
[Fixed] The quick settings tile doesn't highlight/shade when you toggle the protection #1100
[Improved] 'App details' activity is sped up considerably #1099
[Improved] pref.filtered.ports setting now can understand port ranges #830

Other

[Added] 'Watchdog period' advanced setting #1067
Depending on the firmware, Android might be very aggressive to background services, killing them really frequently. In AdGuard case this aggressive behavior may be truly destructive. This feature starts a special 'watchdog' service, which keeps AdGuard's main process alive. However, it is disabled by default as most of the Android devices do not suffer from the 'random process killing' issue.
[Added] ABVPN filter #1015
[Added] Hungarian filter #1011
[Added] AdGuard French filter #1127
[Changed] Default HTTPS exclusions list was updated #1116
[Changed] 'Update only over WiFi' option is grayed out when automatic filters update is disabled #953
[Fixed] Crash while updating AdGuard #1086
[Fixed] 'Filters autoupdate period' graying out bug #956
[Fixed] Premium license expiration notification is shown after the first installation #1062
[Fixed] Cannot send MMS when AdGuard is in Proxy+Auto filtering mode #1058
[Fixed] VpnService.prepare crashes due to XPosed module #1084
[Fixed] An attempt to get a license from within the app makes AdGuard crash when there's no browser installed #1112
[Fixed] Compatibility issues
[Improved] UDP connections handling was reworked #906
AdGuard for Android 2.8.76
Release date: December 8, 2016
It hasn't been long since we have 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.
AdGuard for Android 2.8.71
Release date: December 6, 2016
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.
AdGuard for Android 2.8.67
Release date: November 30, 2016
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.

Ad Blocking

[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.filtered.ports' added to low level settings - advanced users can now add new ports to filter #796
[Added] $websocket content type modifier - it will enable to use rules written exclusively for WebSocket connections #801
[Added] $important rule modifier #833
[Added] Latvian filter list #730
[Added] List-KR filter list #756
[Added] A new low-level setting: "pref.boot.startup.delay" #776
[Changed] Multiple browsers added to the list of browsers filtered by default #757, #808, #862, #922
[Fixed] $replace rules can now be applied along with other filtering rules #844
[Fixed] $app modifier is ignored when HTML content is being filtered #921
[Fixed] HTML filtering rules with wildcard attribute can not be parsed #917
[Improved] Users are now allowed to select filters update check period #746
[Improved] Increased content filtering rules maximum length limit #590
[Improved] HAR file writer, which is used for debugging purposes #784
[Improved] QUIC-connections blocking for the Chrome browser #766

Networking

[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.
[Added] VPN restart feature #733
[Changed] Updated default SSL whitelist #843, #848
[Changed] Protection is now paused automatically when Bluetooth tethering is detected #791
[Changed] IPv4 connections now have priority over IPv6 connections #802
[Changed] New server is now used for filters #863
[Changed] The way AdGuard blocks IPv6 #853
[Fixed] Wi-Fi calling for AT&T #817
[Fixed] Crash due to "Too many open files" error #834
[Fixed] ENOBUFS error while writing to the TUN #724
[Fixed] SOCKS 5 proxy blocks internet traffic #660
[Fixed] Error processing HTTP/2 requests #850
[Fixed] HTTPS connections with some upstream HTTP proxy #839
[Fixed] "Operation not permitted" error while processing UDP connection #840
[Fixed] Issue with traffic slipping through firewall #765
[Improved] HTTPS is now used for safebrowsing service requests #912
[Improved] AdGuard styles are now protected from removal #913
[Improved] AdGuard automatically detects when AdGuard's certificate is moved to system certificate storage (Helps with https filtering in Android N+) #755

UI

[Added] 'Installation date' to the app details screen #794
[Added] A Quick Settings tile for Android N and up #767
[Added] A low level switch to enforce "protection paused" notification to be visible even when notification icon mode is set to 'None' #838
[Changed] Some localizations were updated #919
[Changed] Filtering methods explanations were updated #136
[Changed] IME (typing) mode for adding/importing custom rules dialogs #835
[Changed] System packages list is added to the "Tech info" section of "Android OS" details screen #857
[Changed] Apps Management screen is automatically updated when new app is installed - no need to restart AdGuard anymore #747
[Changed] 'Apps and Statistics' section renamed to 'Apps Management' and brought to the main menu #823
[Fixed] Time format on main screen now follows system settings #819
[Fixed] Unnecessary exception is logged #854
[Improved] Filter editor now recognizes lines starting with "!" as commentaries in user-imported filters #759

Minor and compatibility issues

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.
AdGuard for Android 2.7.220
Release date: August 11, 2016
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.

UI

[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] An option to browse for a file to import user filter #120
[Added] A notification to inform user of expiring license #606
[Added] New localizations: Slovak & Norwegian Bokmål #688, #717
[Changed] Disabled vibration and sound for AdGuard notifications #205
[Changed] Instead of stopping protection on settings change, a toast message is showed #667
[Changed] When user changes default firewall settings, ask him if he wants to reset per-app settings #675
[Changed] Show notification when VPN is revoked #672
[Changed] AdGuard now counts DNS traffic towards a special “virtual” package named “DNS” #668
[Changed] Made some minor UI enhancements #684, #685, #687, #692, #697, #698, #700, #721, #726
[Fixed] AdGuard closes if you swipe it with ‘No icon’ notification setting #662
[Fixed] An issue with Samsung’s buggy firmware (messed notification sounds) #716
[Improved] Premium features description #669
[Improved] UI accessibility for a visually impaired users #519

Ad Blocking

[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.
[Added] RoList filter to the list of supported filters #523
[Changed] Several browsers were added to the list of filtered by default #708, #731
[Fixed] Disabling filtering for “Android OS” now fully excludes OS packages from the VPN #732
[Improved] Added support for the :style pseudo class syntax #701
[Improved] Modified $empty modificator behavior to improve filtering #677
[Improved] Increased content filtering rules maximum length limit #590

Networking

[Changed] Allowed DNS requests for root user #535
[Fixed] An issue when allowed apps couldn’t connect when DNS was blocked #714, #720
[Fixed] SSL whitelist no more can be applied to random domains #738
[Fixed] Resolved shadowing of our Apache commons classes by old versions shipped in Android #709
[Improved] All our requests are now more secure with SSL/TLS #611

Install/Update

[Added] Automatic protection restart after AdGuard update #725
[Fixed] Self killing on update #696

Compatibility

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:
Ad blocking interferes with videos in Mail.ru news app #711
Upload doesn’t work for Yandex Disk #736
Samsung Battery Saving mode #378, #656
HTC battery optimization #536
Sync for Reddit app #645
Cortana voice app #661
Lazada app #680
Smart appointments in Google Calendar #658
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
AdGuard for Android 2.6.108
Release date: June 15, 2016

Hello everyone!

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 undergoes some tweaks, new filters are added to make filtering more comfortable... and much more!

Ad Blocking

[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.
[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).
Other changes:
[Added] Korean Adblock list: #556
[Added] Fanboy’s Swedish filter: #627
[Added] Fanboy’s Vietnamese filter: #589
[Added] LastPass app added to the browsers list: #476
[Fixed] Improved ad blocking in Youtube app: #573
[Fixed] Adguard fails to detect HTML on some websites: #554

Networking

[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.
Run Orbot.
Open Adguard.
Go to Settings - Advanced, open Proxy settings.
Select SOCKS4 proxy type, set host to 127.0.0.1 and port to 9050.
That’s it, run Adguard protection and all your traffic is now going through 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!
Other changes
[Changed] Updated default https exclusions list (almost 1k domains there now): #579
[Fixed] Do not start VPN when another VPN is in use: #527
[Fixed] Wi-Fi calling in UK EE network does not function if Adguard is active: #582
[Fixed] No HTTPs filtering of Google domains in Chrome browser: #365
[Fixed] Empty ad placeholders are visible in some apps with HTTPS filtering enabled: #402
[Fixed] Adguard does not block connections when an app switches to SSL 3.0: #562
[Fixed] Some apps repeat ad requests every second (Play music issue): #511
[Fixed] HTTPs filtering does not work for Google domains (Android N): #486
[Fixed] Error generating certificate for certificates w/o alternative name: #548
[Fixed] Added workaround for update procedure on Android N #634
[Fixed] Not starting VPN service on quick network change #636

UI

[Added] Default language is now “System” (just uses the system language even if you change it): #131
[Added] Added Adguard shortcut for fast enabling or disabling Adguard: #481
[Added] Show warning when user tries to set notification icon to “None”: #497
[Changed] 1-place widget appearance: 481
[Fixed] An issue with Adguard shortcut opening app UI: 610
[Fixed] Tethering “conflict” notification is shown every time: #503
[Fixed] Statistics detalization for low-res devices: #525
[Fixed] Dialog windows width: #557
[Fixed] Accessibility problem for visually impaired users: #519

Compatibility

[Fixed] Aliexpress: #615
[Fixed] Yandex Navi and Maps: #447
[Fixed] Wire: #517
[Fixed] Sberbank and manual proxy mode: #545
[Fixed] Adwords app: #327
[Fixed] Outlook mobile app: #560
[Fixed] Openbank: #504
[Fixed] Samsung Theme Store: #571
[Fixed] SimpleNote sync: #540
[Fixed] Wawa: #543
[Fixed] Yelp (cannot complete a transaction): #603
[Fixed] PrivatBank: #567
[Fixed] Angry Birds Friends: #546
[Fixed] HERE Maps: #530
[Fixed] FarPost Кино: #529

Other

[Fixed] Samsung Battery saving feature interferes with Adguard: #378
[Fixed] HTC battery optimization mode interferes with Adguard: #536
[Fixed] License key can be found in the log file: #595
[Fixed] Limit the number of license check requests: #574
[Fixed] HTC devices power saving mode: #536
AdGuard for Android 2.5.196
Release date: April 27, 2016
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.

HTTPS filtering

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.

UI changes

[Added] New material icon #203
[Improved] Statistics detalization #48
[Changed] "Rate App" button was returned to "About" view in Amazon build #232
[Fixed] Changed selected text background in the Low level settings to differ from text color #260

Ad Blocking

[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] $replace modifier for basic rules #239
[Changed] $popup rules are applied to "redirect" responses now #281
[Changed] Optimized filtering speed #470
[Fixed] AdGuard filters "application/xhtml" pages now #477
[Fixed] Issue with parser building wrong absolute URL #442
Added various language-specific and other filters:
[Added] "Anti-Adblock Killer | Reek" filter #420
[Added] Polish cookies filter #354
[Added] Persian/Farsi list #296
[Added] Finnish filter #293
[Added] Greek AdBlock filter #282
[Added] Bulgarian filter #259
[Added] Estonian filter #468

Compatibility

[Fixed] Telegram app #294
[Fixed] Yandex.Navigator #278
[Fixed] Sleipnir Mobile added to the browsers list #316
[Fixed] VIA browser added to the browsers list #381
[Fixed] Fixed Nimbus Note app sync issue #364
[Fixed] Zoiper and CSipSimple apps #422
[Fixed] Several banking apps were added to exceptions list #414, #397
[Fixed] IP Cam Viewer Pro #321
[Fixed] LiveJournal app #144
[Fixed] SK Telecom's SMS and MMS apps #412
[Fixed] Nekto Me app #374
[Fixed] GoPro app compatibility with VPN #495
[Fixed] Disa app #499

Languages and translations

Added localizations to various languages:
[Added] Finnish language #293
[Added] Hungarian language #309
[Added] Chinese Traditional language #277
[Added] Bulgarian language #444
[Added] Croatian language #494
[Added] Vietnamese language #493
[Added] Dutch language #500

Other

[Added] An option to disable splash screen on AdGuard launch #490
[Added] Warning for smartphone users about battery stats #366
[Added] Apus Browser support #449
[Added] Support for HTTP method REPORT #431
[Changed] Use Origin as Referer for websocket connections #429
[Changed] Make HTTPS whitelist, blacklist and apps exceptions available in "Low level settings" so you can easily reset it to default #457
[Changed] Added RelayForReddit Pro to the list of browsers (you don't need premium to block ads in this app) #301
[Changed] Improved HTML content detection #348
[Fixed] Website can be broken because of invalid HTML inside a "noscript" tag #400
[Fixed] AdGuard ignores tag href attribute while constructing an absolute URL #401
[Fixed] AdGuard cannot detect HTML if there is an xml declaration at the document start #428
[Fixed] Glitch with swiping AdGuard from the recent apps #292
[Fixed] Error while opening about.com #441
[Fixed] HTML parser should not filter "data:" URLs #417
[Fixed] AG code is injected into "noscript" tag #330
[Fixed] Error while parsing a style tag with embedded svg (lifehacker.com issue) #373
[Fixed] Issue with wrong stats calculated for apps listed in "pref.net.exclusions" #252
[Fixed] Wrong Firewall traffic stats #338
[Fixed] Fixed a bug with filtering of the apps from exceptions list #252
[Fixed] An issue with blocking POST requests and "keep-alive" HTTP connections #332
AdGuard for Android 2.1.359
Release date: January 12, 2016

Ad blocking

[Added] Added popular filter subscriptions: #0
List of added filter subscriptions:
* ABPindo
* 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

UI changes

[Added] New "Notification Icon" setting option: "Notification without icon": #2
So now we now have 4 options:
Default icon. Icon and notification are always visible.
Colored icon (only in Android 4.X). Icon and notification are always visible.
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

Browsing Security

[Changed] Changed the way AdGuard checks domain: #2

VPN

[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.

Languages and translations

[Added] Swedish language: #8
[Added] Estonian language: #7

Compatibility issues

[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

Minor issues

[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
AdGuard for Android 2.1.267
Release date: November 3, 2015
Patch for AdGuard 2.1. This patch fixes a few major bugs discovered in the previous release.
[Added] New low-level setting "pref.net.exclusions". Allows to change the list of apps for which network filtering is disabled.
[Fixed] Problem with filtering stuck at detecting filtered app.
[Fixed] Cannot download file larger than 2Gb.
[Fixed] [Critical] Wakelock when there are semi-closed connections.
[Fixed] Compatibility issue with My JDownloader.
[Fixed] App crash while checking if app is in foreground.
[Fixed] Disabled update check for Amazon build.
AdGuard for Android 2.1.240
Release date: October 26, 2015

Multiple TCP stack improvements:

Previously there were problems with downloading large files, especially from Google Play. It is not the case anymore, you don't have to disable Adguard just to update your favorite app or download a new game.

Overall performance improvement:

With recent changes Adguard has become faster, more stable and less resourse consuming. It was possible due to optimization of several 'bottleneck' situations.

Other changes:

  • Moved firewall icons-cache to Cache folder to be able to clear it from app settings
  • Fixed unnecessary restart of protection in Proxy mode
  • Proxy mode: DNS cache is now flushed on network reconnect
  • Multiple GUI improvement in Low-Level Settings
  • A new preference "pref.vpn.capture" added to low-level settings. If this setting is enabled, Adguard will create the special file named «tun.pcap». It contains all network packets transferred through the VPN. This file is located in the app cache directory, and can be analyzed with the Wireshark program.
  • Optimized Pcap functionality in Low-Level Settings
  • Update channel options are hidden for Amazon builds
  • Fixed handling of HTTP CONNECT requests without Host header
  • Small UI fix on Send Feedback screen
  • Added new localizations: Czech, French, Turkish, Serbian, Spanish
AdGuard for Android 2.1.177
Release date: October 14, 2015
  • 'Firewall' section added to settings, with an ability to disable it comletely.
    Firewall Adguard
  • Firewall: Added an ability to temporary pause blocking for foreground application
    Pause blocking
  • Added low-level settings that can help with the work in non-standard networks and custom firmware
  • An option has been added to low-level configuration, which prohibits VPN pause when changing the network or disconnecting from it
  • Reworked the DNS-filtering - now it should work even where external DNS are blocked
  • Reworked the application life cycle: now the protection can be turned off/on without any issues
  • Fixed application restart after deep sleep
  • Fixed critical error that led to Adguard restart
  • Fixed a mechanism for identifying modem and access point mode and showing a warning
  • Fixed authorization problem in the Moscow Subway
  • Fixed problem sending SMS/MMS in the AT&T network
  • Fixed an issue with collecting traffic statistics
  • Fixed rare problem with automatic filter updates
  • Fixed an issue with firewall interface on small screens
  • Added support for new browsers: Dolphin Zero, Ghostery, CM Private Browsing, Jbak Browser and more
  • Exceptions added: Handcent Next SMS, Chomp SMS, FarmVille 2
  • Updated German and Polish localizations
  • Fixed several issues in the interface
To find more information and discuss new version, visit our blog.
AdGuard for Android 2.0.62
Release date: August 19, 2015
Added the long-awaited firewall feature. Now it is possible to fully control the internet access of apps in different networks. The apps won’t be able to go online and send any data without you knowing. In addition, by using our firewall, you can allow some apps to go to the network only via mobile Internet, while others (for example, ones that require a lot of traffic) – only through Wi-Fi.
Firewall Adguard
Added app traffic monitoring system. You can monitor the consumption of app traffic in real time.
Monitor the traffic
Adguard will show you which apps consume resources at the moment, and demonstrate the used traffic for day, month or all-time.
Added module for blocking advertising domains by DNS (can be found in advanced settings). DNS filtering consists in Adguard intercepting requests to the DNS server, which let the program know where the particular domain is, at what IP address. If requests to the domain should be blocked, then Adguard returns the special blocking response with a lifetime of 1 hour. During this hour, the program will no longer send requests to the DNS server, so the load will be reduced accordingly.
Added Material Design. We have switched to the Material design. Now Adguard is consistent and even more handsome :)
Version 2.0
Added IPv6 filtering support. This protocol may not even be supported by your provider yet, and we have already added its support in VPN mode. Just keep using Adguard as if nothing has changed.
Implemented blocking of QUIC protocol in Google Chrome. Google servers are working based on it, and also with its help Google Chrome loads banners and text ads. At the moment, the use of this protocol gives no significant advantage to the user, therefore we decided to block this protocol.
Added simplified filtering mode without cosmetic rules. It is useful for low-end devices limited by memory and CPU resources. Banners are also wonderfully blocked, but once they are blocked, there will be “holes” that are usually hidden by some cosmetic rules that are present in other modes of filtering.
Added the import function for user rules lists from a file.
Added widget for your desktop, allowing one-click control for the ad-protection.
Added options for update channel - Beta/Release. If you plan on using latest beta updates, don't forget to check the checkbox in advanced settings.
Fixed problem with TCP-stack when downloading large files (in Google Play, etc.).
Remarkably redesigned UDP and TCP connections handling, which led to the load reduction and increase of concurrent connections number.
Use of system Intents to manage the service from other programs (Tasker, etc.) is now allowed.
Improved restarting protection after reconnecting to the network.
Fixed problem with sending MMS through the Verizon operator.
Fixed sending SMS for T-Mobile users.
Added support for NoChromo, Chrome Dev, Amazon Silk.
Added an exception for new Opera Max, you can now use it with Adguard in proxy mode.
Added new icons for different application states. Our notifications became more vivid and informative with new icons of pause, available update, or when a conflicting app is found on the device.
No more status bar colored icon option in Lollipop. In new Android version Google has released a new design requirements, and when we assembled Adguard for the new system while using new technologies, a color icon was “damaged” by assembly tools. Therefore, we had to abandon the colored icon in the Android Lollipop notification (5.0+).
Redesigned interface of user lists.
Added new languages and updated existing localization.
Many small but important fixes.
AdGuard for Android 1.1.888
Release date: April 29, 2015
Fixed some bugs with HTTPS traffic filtering (known issue: conflict with Heroes Charge game)
Fixed an issue with Android killing app process in case of swiping it from recent apps
AdGuard for Android 1.1.887
Release date: April 22, 2015
  • Improved HTTPS filtering, now we can block ads in Skype
  • Optimized programs performance
  • If the protection is disabled, Adguard service now turns off correctly after processing the network events
  • Improved filtering speed of heavy HTML pages
  • Fixed an issue with Android 4 killing Adguard after swiping task from recent
  • Fixed a bug with service autostart in case of wrong events order (if we receive network event first, then boot event)
  • We now use better way to exclude some apps from VPN on Lollipop
  • Fixed an issue with Adguards performance on Android 4.3 SGS3
  • Optimized memory consumption upon loading heavy files
  • Fixed some minor compatibility issues
You can discuss the latest version in our blog: here.
AdGuard for Android 1.1.835
Release date: February 27, 2015
Added support of Habit browser and Yandex browser beta.
Google Messenger app added to exclusions list.
Fixed a bug with local network exclusion. Now local network is properly excluded on all devices. This should fix some compatibility issues: working with local FTP servers, Sonos, Amazon Fire TV, etc.
Fixed filtering issue with websites which use Content-Security-Policy.
Fixed an issue with proxy+automatic filtering mode on devices with kernel version 3.10.
Fixed Adguard filtering in case of using proxy server with port 80.
Fixed UI issue when bandwidth saved value is more than 1GB.
Fixed Google Play Music compatibility issue.
Fixed an issue with waiting for ROOT access on device boot.
AdGuard for Android 1.1.808
Release date: January 21, 2015
Fixed major bug with filtering of some HTTP connections
AdGuard for Android 1.1.805
Release date: December 23, 2014
Added in version 1.1.805:
Added limited support of HTTPS requests filtering
Added Ukrainian and German languages
Tested and optimized for Android 5.0 Lollipop
Added support for Naked Browser
Added notification icon setting
Added new types of filtering rules (regexp-rules)
Fixed in this version:
Resolved compatibility issues with some apps including Telegram, Handcent SMS, Dropsync, Dropbox, Bleep, PAC Console
Fixed bug with processing UDP traffic in VPN mode (Bleep messenger)
Fixed some app crashes
Fixed slow protection startup in proxy mode
Improved CPU and battery usage
Fixed processing of certain HTTPS requests
Fixed problem with landscape mode on devices with low resolution screen
Fixed possible conflicts when using the same port number with another proxy server
Fixed an issue with processing requests to some domains with multiple A DNS-records
AdGuard for Android 1.0.671
Release date: November 13, 2014
After a month of open beta testing, we finally announce the first official release of Adguard for Android. Many thanks to all who helped us in testing the app. Thanks to you, we have fixed more than 100 bugs for the last month!
We are not going to stop on that and will continue the further development of Adguard. Please write us about shortcomings or send your suggestions. We are always here to help you.
AdGuard for Android 1.0.655
Release date: November 12, 2014
Splash screen
Fixed an issue with HTTP/1.0 connections
Fixed Google Chrome filtering if "Reduce data usage" is enabled and proxy mode is on
Fixed bug with update available notification error
Minor UI fixes
AdGuard for Android 1.0.631
Release date: November 7, 2014
Added tutorial on app first run
Added unsupported browsers detection
Fixed slow page load on some devices
Fixed service restart issues
Fixed lots of minor bugs
AdGuard for Android 1.0.589
Release date: November 2, 2014
Adguard in proxy mode now can be used along with Opera Max and DrWeb
Added new questions to FAQ
Fixed handling of the situation when VPN is not supported
Fixed app crash in proxy mode
Fixed an issue with app autostart
Minor UI fixes: added new dialog on first VPN startup
AdGuard for Android 1.0.564
Release date: October 30, 2014
Memory usage has been significantly reduced
Improved filtering speed and protection initialization speed
Fixed bug with unexpected protection shutdown (in proxy mode mostly)
Fixed compatibility issues with Viber, Okko and Mobilism apps
Fixed compatibility issues with Youtube and Play apps and manual proxy mode
Improved update process in standalone app version (apk)
Fixed lots of minor bugs
AdGuard for Android 1.0.532
Release date: October 23, 2014
Fixed crash caused by downloading huge files in VPN mode
Fixed filtering of Opera Classic
Minor UI fixes
AdGuard for Android 1.0.493
Release date: October 18, 2014
Fixed vpn autorestart issue
Fixed app update
Fixed HTTP keep-alive issue with POST requests
AdGuard for Android 1.0.481
Release date: October 17, 2014
Added trial period
Added "Errors only" logging level
Fixed bug with Adguard start even if protection was not enabled
Fixed major bug with HTTP keep-alive connections
Fixed lots of minor bugs
AdGuard for Android 1.0.417
Release date: October 17, 2014
Open beta-version of Adguard for Android
Downloading AdGuard To install AdGuard, click the file indicated by the arrow Select "Open" and click "OK", then wait for the file to be downloaded. In the opened window, drag the AdGuard icon to the "Applications" folder. Thank you for choosing AdGuard! Select "Open" and click "OK", then wait for the file to be downloaded. In the opened window, click "Install". Thank you for choosing AdGuard!
Install AdGuard on your mobile device