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.
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.
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) #1869We 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
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!
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.
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.
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
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! :)
$networkmodifier doesn't work #1268
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.
[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.
[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.
[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.