Menu
PT

AdGuard v4.5.1 for iOS: dealing with unforeseen rule limit on iOS 17

This update comes with a story, since we found an unexpected iOS 17 bug that essentially limits the number of content-blocking rules, so you already know there’s no way we aren’t telling you all about it. Apart from the bug workaround, this release also contains some nice improvements and fixes beneficial to the app's performance and stability.

Apple, you said we could use up to 150k content-blocking rules in Safari, what happened?

The issue

So, it all started with us trying to find a solution to an issue on iOS 17 where filters would just update endlessly without actually updating. Yeah, you heard that right — tapping 🔄 icon in the upper right corner of the AdGuard's main screen was triggering an endless spinning animation but nothing happened. In some cases, however, this sight would come to an end in the form of filter update errors.

The cause

Initially, we were trying to find issues in our own app's code (as any responsible developer would). But the more we tried, the more we started to pay attention to the fact that the issue occurred only on the newest iOS, which is supposed to be the most polished and optimized. This detail and increasing user feedback lead us to realize that the root of the problem lies in the updated iOS.

The next realization was that filters would still update successfully depending on the filters enabled (or, rather, not enabled) by the user, which in turn helped us find out that loading rules into Safari sometimes hits a memory limit — something we never had a problem with before.

Apple provides developers with the ability to implement Safari Content Blocker functionality in their apps, which allows them to offer content-blocking features to users. As you can probably guess, this is an indispensable tool for ad-blocking apps on iOS, because it gives a way to apply filtering rules to pages accessed in Safari. Currently, according to the Safari Content Blocking API documentation, it allows for up to 150k rules in one content blocker (and one app can have several content blockers).

The contradiction

All in all, we were faced with a surprising new reality where using our standard Safari content blockers with 150k filtering rules was all of sudden causing a crash on iOS 17. It turned out that Safari wouldn't accept files over a certain size anymore — even content blockers with 40-60k rules (which is 3 times below the 150k limit) would sometimes crash, depending on the rules they contain.

This leads to a simple question to Apple: how come a 40k rule content blocker crashes when Safari officially allows 150k rules?

Since it’s an obvious bug in iOS 17, we already reported it on Apple’s forum. We’d appreciate it if you could upvote it there by pressing 'Me too'. Also, here’s the ticket ID in Apple’s Feedback Assistant: FB13282146.

The workaround

It took us over a week to figure out a temporary measure: we restricted the size of our JSON files and optimized main filters so that they can squeeze into this new ‘size requirement’. If a content blocker is still a little too big for iOS’s liking (the final size depends on how many and what filters are enabled by the user), we automatically cut its size so that at least part of the rules that meet the size requirement gets applied in Safari.

So while everything should work fine for most users at the moment, we are very much looking forward to Apple fixing this bug ASAP.

SafariConverterLib, Scriptlets and TSUrlFilter updated

Thanks for letting us blow off some steam above, now we can tell you about nicer things in v4.5.1. For instance, we updated SafariConverterLib, Scriptlets, and TSUrlFilter dependencies. The update of these three components and their interconnection helps maintain high filtering quality, i.e. efficient and up-to-date performance of blocking rules.

SafariConverterLib converts AdGuard filtering rules into Safari content blocking rules, so it basically makes possible to use the full power of our filters in AdGuard for iOS. Scriptlets and TSUrlFilter are also nothing short of important, since they help implement the Advanced blocking feature in AdGuard for iOS.

DnsLibs reworked

In DnsLibs (our DNS filtering engine) v2.3 update we have done some serious rework and adjustments which significantly improved AdGuard's DNS-over-HTTP/3 performance and stability.

Also, some other things were fixed, one of them being the issue where AdGuard wouldn’t open on iOS 13.x.


We hope you'll enjoy improved AdGuard for iOS, and if you have any thoughts about this update, please don't hesitate to leave a comment below or reach out to us on social media.
The full v4.5.1 changelog can be found on Github.
Any feedback is also very welcome in Github issues.

Gostou desta postagem?
18 885 18885 comentários de utilizador
Excelente!

AdGuard para Windows

AdGuard para Windows é mais do que um bloqueador de anúncios. É uma ferramenta multiusos que bloqueia anúncios, controla o acesso a sítios perigosos, acelera o carregamento de páginas e protege as crianças de conteúdos impróprios.
Ao fazer a transferência do programa, aceita os termos do Contrato de licença
Ler mais
18 885 18885 comentários de utilizador
Excelente!

AdGuard para Mac

Ao contrário de outros bloqueadores de anúncios, o AdGuard foi projectado com as especificações em mente do macOS. Não só fornece defesa contra anúncios no Safari e outros navegadores, como também o protege de monitorização, phishing e fraude.
Ao fazer a transferência do programa, aceita os termos do Contrato de licença
Ler mais
18 885 18885 comentários de utilizador
Excelente!

AdGuard para Android

O AdGuard para Android é uma solução ideal para dispositivos móveis Android. Em contraste com outros bloqueadores de anúncios, o AdGuard não requer acesso à raiz e oferece um amplo espectro de recursos: filtragem em aplicações, gestão de aplicações e muito mais.
Ao fazer a transferência do programa, aceita os termos do Contrato de licença
Ler mais
18 885 18885 comentários de utilizador
Excelente!

AdGuard para iOS

O melhor bloqueador de anúncios para iOS para iPhone e iPad. O AdGuard elimina todos os tipos de anúncios no Safari, protege a sua privacidade e acelera o carregamento da página. A tecnologia de bloqueio de anúncios do AdGuard para iOS garante uma filtragem da mais alta qualidade e permite-lhe utilizar vários filtros ao mesmo tempo
Ao fazer a transferência do programa, aceita os termos do Contrato de licença
Ler mais
18 885 18885 comentários de utilizador
Excelente!

AdGuard VPN

74 locais em todo o mundo

Aceder a qualquer conteúdo

Encriptação de alto nível

Nenhuma política de registo

Conexão mais rápida

Assistência 24/7

Experimente gratuitamente
Ao fazer a transferência do programa, aceita os termos do Contrato de licença
Ler mais
18 885 18885 comentários de utilizador
Excelente!

Bloqueador de conteúdo do AdGuard

O bloqueador de conteúdo do AdGuard elimina todos os anúncios em navegadores para dispositivos móveis que oferecem suporte a tecnologia para bloqueio de conteúdo — ou seja Samsung Internet e Yandex Browser. Embora seja mais limitado do que o AdGuard para Android, ele é gratuito, fácil de instalar e ainda oferece alta qualidade de bloqueio de anúncios.
Ao fazer a transferência do programa, aceita os termos do Contrato de licença
Ler mais
18 885 18885 comentários de utilizador
Excelente!

Extensão de navegador AdGuard

O AdGuard tem a extensão de bloqueio de anúncios mais leve, rápida e que efectivamente bloqueia todos os tipos de anúncios em todas as páginas da internet! Escolha o AdGuard para o navegador que usa e obtenha uma navegação gratuita, rápida e segura.
18 885 18885 comentários de utilizador
Excelente!

Assistente do AdGuard

Uma extensão de navegador complementar para AdGuard aplicações para computador. Ele oferece acesso no navegador a recursos como bloqueio de elemento personalizado, lista de permissões de um sítio ou envio de um relatório.
18 885 18885 comentários de utilizador
Excelente!

AdGuard DNS

O AdGuard DNS é uma solução alternativa para bloqueio de anúncios, protecção de privacidade e controlo parental. Fácil de configurar e de usar, oferece uma protecção mínima necessária contra anúncios, monitorizadores e phishing. Independentemente da plataforma e dispositivo que estiver a usar.
18 885 18885 comentários de utilizador
Excelente!

AdGuard Home

O AdGuard Home é um servidor de DNS para bloqueio de anúncios e monitorização em toda a rede. Depois de o configurar, abrange TODOS os seus dispositivos domésticos e não irá precisar de nenhum programa instalado. Com o surgimento da Internet das coisas e dispositivos conectados, torna-se cada vez mais importante poder controlar toda a sua rede.
18 885 18885 comentários de utilizador
Excelente!

AdGuard Pro para iOS

O AdGuard Pro tem muito a oferecer, além do excelente bloqueio de anúncios para iOS no Safari, já conhecido pelos utilizadores da versão regular. Ao fornecer acesso às configurações DNS personalizadas, a aplicação permite bloquear anúncios, proteger os seus filhos do conteúdo adulto on-line e proteger os seus dados pessoais contra roubo.
Ao fazer a transferência do programa, aceita os termos do Contrato de licença
Ler mais
18 885 18885 comentários de utilizador
Excelente!

AdGuard para Safari

As extensões de bloqueio de anúncios para o Safari estão a enfrentar dificuldades desde que a Apple começou a forçar o uso do novo SDK para todos. A extensão AdGuard deve trazer de volta a alta qualidade de bloqueio de anúncios para o Safari.
18 885 18885 comentários de utilizador
Excelente!

AdGuard Temp Mail

Um gerador gratuito de endereços de e-mail temporários que o mantém anónimo e protege a sua privacidade. Sem spam na sua caixa de entrada principal!
18 885 18885 comentários de utilizador
Excelente!

AdGuard para Android TV

O AdGuard para Android TV é a única aplicação que bloqueia anúncios, protege a sua privacidade e actua como uma firewall para a sua smart TV. Receba avisos sobre ameaças da Web, utilize DNS seguro e aproveita o tráfego encriptado. Relaxe e mergulhe nas suas séries favoritas com segurança de alto nível e zero anúncios!
A transferir o AdGuard Clique no botão indicado pela seta para iniciar a instalação Seleccione "Abrir" e clique em "OK", depois espere que o ficheiro seja transferido. Na janela aberta, arraste o ícone AdGuard para a pasta "Aplicações". Obrigado por escolher o AdGuard! Seleccione "Abrir" e clique em "OK", depois espere que o ficheiro seja transferido. Na janela aberta, clique em "Instalar". Obrigado por escolher o AdGuard!
Instale o AdGuard no seu dispositivo móvel