O Android 15 pode ajudar os aplicativos a carregar páginas da web mais rapidamente

Muitos telefones principais vêm com mais RAM do que um laptop comum, o que os ajuda a lidar com algoritmos pesados ​​de processamento de imagem, tarefas de IA e jogos intensivos sob demanda. Mas na maioria das vezes, a RAM do seu telefone não está cheia ou nem perto disso, pois o sistema operacional tenta evitar esse cenário eliminando ou trocando processos quando necessário. Embora geralmente seja melhor deixar o gerenciamento de memória nas mãos do sistema operacional, existem alguns processos que não devem ser eliminados porque podem haver problemas quando eles forem reiniciados.



Com o lançamento do Android 7.0 Nougat, o Google introduziu um novo serviço de sistema chamado PinnerService que “permite que a estrutura bloqueie alguns arquivos no cache da página”. Fazer isso “remove a memória para uso por qualquer outro processo”, o que pode ser útil se o fabricante do dispositivo identificar alguns arquivos que podem ser usados ​​regularmente. Fixar arquivos importantes na memória pode reduzir a instabilidade, pois eles não serão eliminados da memória quando o usuário abrir um aplicativo pesado. Por exemplo, o Google usa o PinnerService para fixar o aplicativo Google Camera, o Pixel Launcher e alguns componentes principais do sistema operacional na memória. A partir do Android 15, o Google também pode fixar parte do WebView do sistema Android na memória.


Relacionado

Android 15: novidades, vazamentos, linha do tempo e tudo de novo no DP1

Aqui está o que sabemos sobre o Android 15 agora que a primeira prévia do desenvolvedor chegou

Android System WebView é um componente do sistema operacional que muitos aplicativos usam para renderizar conteúdo da web. Alguns aplicativos usam WebView para mostrar coisas como uma tela de login ou uma única página de ajuda, enquanto outros dependem dele para sua funcionalidade principal. Leitores RSS como o Feedly, por exemplo, usam o WebView para mostrar artigos inteiros sem abrir o navegador padrão em uma nova aba.

Android_System_WebView_demo

O componente Android System WebView em um dispositivo Android (esquerda, meio). Um aplicativo Android que usa WebView (à direita).

O Android System WebView é baseado na mesma base de código de código aberto do Chromium em que o Google Chrome se baseia, mas é um pacote separado que é atualizado independentemente do Chrome. Para reduzir a quantidade de espaço que ambos os pacotes ocupam no dispositivo, o Google criou uma biblioteca chamada trichrome que contém código e recursos compartilhados por ambos os pacotes. É esta biblioteca tricrômica que o Google adicionou à lista de arquivos fixados no Android 15 Developer Preview 1.


Enquanto eu estava pesquisando a versão DP1, descobri que o Google atualizou a classe PinnerService para incluir código que permite fixar a biblioteca tricrômica quando o novo sinalizador “pinWebView” está ativado. Este sinalizador é definido como verdadeiro no Android 15 DP1 e resulta na fixação do “APK base” da biblioteca Trichrome na memória. No entanto, o arquivo inteiro, que tem cerca de 161 MB, não está fixado na memória. Em vez disso, o sistema operacional fixa apenas cerca de 20 MB na memória. Isso não é incomum, pois apenas uma fração dos APKs da Câmera do Google e do Pixel Launcher estão fixados na memória.

PinnerService_in_Android_15_DP1

dumpsys_pinner_in_Android_15_DP1


Snippet de código da classe PinnerService no Android 15 DP1 (parte superior). Saída de um comando que mostra quais arquivos o PinnerService fixou na memória no Android 15 DP1 (parte inferior).

O objetivo do Google de fixar parte da biblioteca tricrômica na memória no Android 15 provavelmente acelerará a rapidez com que o componente WebView pode ser ativado. Muitos aplicativos dependem do Android System WebView, por isso faz sentido que o Android fixe-o na memória, especialmente considerando a quantidade de RAM disponível na maioria dos dispositivos Android atualmente. Essa mudança provavelmente não trará uma melhoria significativa no desempenho de inicialização do WebView, embora possa ser marginal em dispositivos com menos RAM, onde os processos são paginados com mais frequência sem memória.


Relacionado

A linha do tempo do Android 15 planeja voltar aos trilhos

Depois da montanha-russa beta do Android 14, o Google quer voltar aos trilhos com o Android 15

No entanto, como ainda estamos apenas na primeira fase de visualização do desenvolvedor da linha do tempo do Android 15, não há como dizer se essa mudança permanecerá. É possível que o Google reverta essa mudança e desafixe ​​a biblioteca tricrômica da memória em uma versão futura do Android 15. Também é possível que outros OEMs desativem essa alteração em seus dispositivos quando atualizarem para o Android 15. Uma coisa que sabemos, porém, é que esta não é a única mudança relacionada ao WebView que o Google está preparando, pois há indícios de que a empresa planeja tornar as APIs WebView do Android mais modulares, agrupando-as como parte de um novo módulo Project Mainline chamado WebViewBootstrap.