Totalmente otimizado: encerrando a Semana do destaque de performance
Leitura de 3 minutos
Passamos a última semana compartilhando práticas recomendadas e orientações para ajudar a tornar os apps Android mais rápidos, menores e estáveis. Desde os recursos básicos do otimizador R8 e das otimizações guiadas por perfil até as melhorias de performance com o Jetpack Compose e um novo guia para aumentar o desempenho do app, abordamos as ferramentas de baixo esforço e alto impacto necessárias para criar um app eficiente.
Esta postagem serve como índice e roteiro para você consultar esses recursos sempre que precisar otimizar. Confira os cinco principais aprendizados da nossa jornada juntos.
Usar o otimizador R8 para acelerar seu app
A mudança mais impactante e de baixo esforço que você pode fazer é ativar totalmente o otimizador R8. Ele não apenas reduz o tamanho do app, mas também realiza otimizações profundas em todo o programa para reescrever fundamentalmente o código e aumentar a eficiência. Revise suas regras do Keep e volte a usar o R8 nas suas tarefas de engenharia.
Nossa documentação atualizada e ampliada sobre o otimizador R8 está aqui para ajudar.
O Reddit observou uma inicialização a frio 40% mais rápida e 30% menos erros de ANR depois de ativar o modo completo do R8.
Leia o estudo de caso completo no nosso blog.
Os engenheiros do Disney+ investem no desempenho do app e otimizam a experiência do usuário. Às vezes, até mesmo mudanças aparentemente pequenas podem ter um grande impacto. Ao inspecionar a configuração do R8, a equipe descobriu que a flag -dontoptimize estava sendo usada. Depois de ativar as otimizações removendo essa flag, a equipe do Disney+ notou melhorias significativas na performance do app.
Então, da próxima vez que alguém perguntar o que você pode fazer para melhorar o desempenho do app, basta enviar o link desta postagem.
Leia mais no blog do Dia 1: Use o R8 para reduzir, otimizar e acelerar seu app
Orientação para uma performance melhor
Os perfis de referência eliminam a necessidade de compilação Just in Time, melhorando a velocidade de inicialização, a rolagem, a animação e o desempenho geral da renderização. Os perfis de inicialização tornam a inicialização do app ainda mais leve, trazendo uma ordem inteligente para os arquivos classes.dex do app.
Para saber mais sobre a importância dos perfis de referência para o desempenho do app, leia o blog de engenharia da Meta (em inglês), em que a empresa compartilhou como os perfis de referência melhoraram várias métricas de performance importantes em até 40% nos apps dela.
Continuamos aprimorando a performance do Jetpack Compose para você no Jetpack Compose 1.10. Recursos como a composição pausável e a janela de cache personalizável são cruciais para manter a rolagem sem instabilidade ao lidar com itens de lista complexos.Confira o episódio mais recente do #TheAndroidShow, em que explicamos isso com mais detalhes.
Leia mais no blog de quarta-feira: Considerações mais detalhadas sobre a performance
Medir a performance pode ser tão fácil quanto contar até 3
Não é possível gerenciar o que não se pode medir. Nosso Guia de nivelamento de performance divide sua jornada de medição em cinco etapas, começando com dados facilmente disponíveis e chegando a ferramentas locais avançadas.
Começando pelo nível 1, vamos ensinar você a usar dados prontamente disponíveis do Android vitals, que fornece dados de campo sobre ANRs, falhas e uso da bateria excessivo.
Também vamos ensinar você a subir de nível. Por exemplo, vamos mostrar como alcançar o nível 3 com testes de performance locais usando a Macrobenchmark do Jetpack e a nova API UiAutomator 2.4 para medir e verificar com precisão qualquer mudança na performance do seu app.
Leia mais no blog de quinta-feira:[Link to Thursday's Blog: Leveling Guide for your Performance Journey]
A depuração de performance ficou ainda melhor
A otimização avançada não deve significar relatórios de erros ilegíveis. Os novos recursos foram criados para ajudar você a depurar o R8 e o trabalho em segundo plano com confiança:
Rastreamento automático do Logcat
A partir do Android Studio Narwhal, os rastreamentos de pilha podem ser desofuscados automaticamente na janela do Logcat. Assim, você pode ver e depurar imediatamente qualquer falha em um build pronto para produção.
Restringir regras de retenção
Na terça-feira, desmistificamos as regras de manutenção necessárias para corrigir falhas de execução, enfatizando a escrita de regras específicas no nível do membro em vez de caracteres curinga muito amplos. E como é um assunto importante, também criamos um vídeo para você.
E com a nova verificação de lint para regras de manutenção amplas, o Android Studio Otter 3 Feature Drop também ajuda você nessa questão.
Também lançamos novas orientações sobre testes e solução de problemas da sua configuração do R8 para ajudar você a fazer tudo certo com confiança.
Leia mais no blog de terça-feira:Configurar e solucionar problemas com regras de manutenção do R8
Trabalho em segundo plano
Compartilhamos orientações sobre como depurar cenários comuns que podem ocorrer ao agendar tarefas com o WorkManager.
O Inspetor de tarefas em segundo plano oferece uma representação visual e uma visualização em gráfico das tarefas do WorkManager, ajudando a depurar por que o trabalho programado está atrasado ou falhou. A página de destino da documentação atualizada sobre trabalho em segundo plano destaca APIs específicas para tarefas otimizadas para casos de uso específicos, ajudando você a ter uma execução mais confiável.
Leia mais no blog de quarta-feira: Considerações sobre a performance do trabalho em segundo plano
A otimização de performance é uma jornada contínua
Se você concluiu o desafio para ativar o modo completo do R8 esta semana, a próxima etapa é integrar o desempenho à estratégia do produto usando a pontuação de desempenho do app. Essa estrutura padronizada ajuda você a encontrar os itens de ação de maior alavancagem para melhoria contínua.
Encerramos a semana com a sessão de perguntas e respostas #AskAndroid Live, em que engenheiros responderam às suas dúvidas mais difíceis sobre R8, otimizações guiadas por perfil e muito mais. Se você perdeu, procure a reprise!
Agradecemos sua participação! Agora, comece a criar e mantenha esse ritmo.
-
Eventos e programasVamos começar com a mudança mais impactante e fácil que você pode fazer para melhorar a performance do seu app: ativar o otimizador R8 no modo completo.
Ben Weiss • Leitura de 5 minutos -
Eventos e programasEstamos abrindo as inscrições para o Programa Catalyst para desenvolvedores do Android XR, uma iniciativa dedicada a acelerar o desenvolvimento de apps do Android XR prontos para serem lançados no próximo ano.
Leitura de 1 minuto -
Eventos e programasA programação do Google I/O já está disponível!
Leitura de 1 minuto
Receba os insights mais recentes sobre desenvolvimento Android na sua caixa de entrada semanalmente.