Skip to content

4.4

Compare
Choose a tag to compare
@maxikuzmin maxikuzmin released this 20 May 12:58
· 3 commits to master since this release
bb00933

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 direct download links:

AdGuard for Android TV direct download links: