Um comerciante constrói uma página. Quando ela chega a um cliente dentro do seu WebView, carrega passageiros que o comerciante nunca convidou explicitamente — beacon de analytics, píxeis de retargeting, uma plataforma de consentimento, um gerenciador de tags, uma ferramenta de mapa de calor, um widget de chat. Cada um prometeu crescimento ou insight. Juntos, tributam cada carregamento de página, em cada dispositivo, para cada visitante. E em um WebView, nada os detém.

O imposto de rastreamento da web aberta, agora dentro do seu app

Na web aberta, extensões de navegador e proteção de rastreadores em nível de plataforma atenuam parte disso. Dentro de um WebView, nada disso existe. Os scripts de terceiros da página executam exatamente como escritos, com acesso total ao único encadeamento de JavaScript, à rede e ao contexto da própria página. O capítulo de JavaScript do Web Almanac 2024 mediu que a página móvel mediana envia 375 KB de JavaScript de terceiros contra 168 KB de primeira parte — terceiros superam o código próprio do site em 2,2×. O JS de terceiros cresceu de 255 KB (2020) para 292 KB (2022) para 375 KB (2024). O capítulo de Terceiros constatou que 92% das páginas carregam ao menos um terceiro, com scripts representando cerca de 30,5% das solicitações de terceiros; os 1.000 sites principais rodam uma mediana de 66 terceiros por página. Seu WebView herda tudo isso, sem filtro.

É primeiro um imposto de desempenho

Cada script de terceiros é trabalho do encadeamento principal que o cliente paga. O capítulo de desempenho do Web Almanac constatou que páginas móveis com scripts de comportamento (analytics) mantêm uma boa pontuação de Interaction to Next Paint apenas 37% das vezes — a pilha de analytics satura o encadeamento que deveria responder aos toques, então o botão de checkout parece lento e o menu hesita. A própria orientação do Google correlaciona o tamanho do gerenciador de tags com um INP pior. E velocidade é receita: o Google e a Deloitte em Milliseconds Make Millions descobriram que uma melhora de 0,1 segundo no tempo de carregamento móvel elevou as conversões de varejo em 8,4%. Uma página WebView inchada com scripts alheios entrega essa melhora antes mesmo do código do comerciante rodar.

Também é um imposto de privacidade e superfície de ataque

Cada SDK é um ponto de exfiltração de dados. O mesmo Web Almanac nota que a cadeia de inclusão mediana tem 3 níveis de profundidade, com a mais profunda observada chegando a 2.285 níveis — terceiros carregando terceiros carregando terceiros, muito além da visibilidade do comerciante. Sob o GDPR, cookies e rastreadores não essenciais exigem um ato de consentimento afirmativo claro; reguladores da Áustria, França e Suécia decidiram que implementações padrão do Google Analytics violam a regra, com a Suécia aplicando uma multa de 1 milhão de euros. Nenhuma dessa disciplina de consentimento é aplicada automaticamente dentro de um WebView. E cada script extra é uma dependência que pode travar, falhar ou ser comprometida — a sequência de carregamento da página é refém do passageiro mais lento e menos responsável.

A solução do runtime

Um runtime próprio do host não carrega a página do comerciante e espera que os terceiros se comportem. Ele governa o carregamento de recursos na camada WebView — interceptação no Android (shouldInterceptRequest) e WKURLSchemeHandler no iOS — assim uma única política pode permitir o essencial, adiar tags não críticas até o ocioso e bloquear rastreadores e scripts de cadeia de suprimentos conhecidos, tudo respeitando o estado de consentimento do usuário. A analytics pode ser consolidada e reportada no servidor, removendo categorias inteiras de rastreadores no navegador. Terceiros viram um limite governado que o runtime impõe, não um imposto silencioso que a página cobra de seus usuários.

DimensãoWebViewRuntime próprio do host
Governança de scriptsCada terceiro dispara sem filtroPermitir, adiar, bloquear na camada de carga
Encadeamento principalSaturado por analytics/gerenciadores de tagsProtegido para a UX própria da página
PrivacidadeRastreadores exfiltram; consentimento não aplicadoConsciente do consentimento; analytics server-side
Cadeia de suprimentosCadeias de inclusão profundas e opacasDependências acotadas e auditáveis
Superfície de ataqueCada SDK é uma dependência explorávelSuperfície mínima e verificada

O fio condutor desta série é o controle. Um WebView entrega a página de seus usuários — e seus dados — a uma economia de rastreamento da web aberta que você não vê nem governa. Um runtime deixa você traçar o limite. Para um catálogo de páginas alheias que rodam dentro do seu app, esse limite é a fenda entre uma experiência rápida e privada e uma página que aluga silenciosamente seus clientes a quem carregou o SDK primeiro.

Fontes