Android Studio 4.2 (abril de 2021)

O Android Studio 4.2 é uma versão principal que inclui uma variedade de novos recursos e melhorias.

4.2.2 (junho de 2021)

Esta atualização secundária inclui várias correções de bugs. Para consultar uma lista de correções de bugs importantes, leia a postagem relacionada no blog de Atualizações de versão (em inglês).

4.2.1 (maio de 2021)

Esta pequena atualização inclui o plug-in do Kotlin 1.5.0 e inclui várias correções de bugs. Para consultar uma lista de correções de bugs importantes, leia a postagem relacionada no blog de Atualizações de versão (em inglês).

Plug-in do Android para Gradle 4.2.0

A versão mais recente do Plug-in do Android para Gradle inclui muitas atualizações. Para saber mais, leia as notas da versão completas do Plug-in do Android para Gradle.

Mudanças na configuração e compatibilidade do Gradle

Quando a ferramenta de build do Gradle é executada no Android Studio, ela usa o JDK empacotado no Studio. Em versões anteriores, o JDK 8 era incluído no Studio. No entanto, na versão 4.2, o JDK 11 agora é incluído. Ao usar o novo JDK incluído para executar o Gradle, isso pode resultar em alguma incompatibilidade ou afetar a performance do JVM devido a mudanças no coletor de lixo. Esses problemas estão descritos nas notas da versão do AGP.

Opção para otimizar o tempo de sincronização do Gradle

Para melhorar a performance de sincronização do Gradle, o Android Studio ignora a criação da lista de tarefas durante a sincronização. Isso permite que a sincronização do Gradle seja concluída mais rapidamente e melhora a capacidade de resposta da interface em projetos muito grandes. Essa opção é ativada por padrão no Android Studio 4.2. Para desativá-la, acesse File > Settings > Experimental (no Mac, Preferences > Experimental) e desmarque a opção Do not build Gradle task list during Gradle sync.

Database Inspector

Melhorias no editor de consultas

O Database Inspector inclui algumas melhorias para ajudar você a criar e executar suas instruções SQL personalizadas. Ao abrir o inspetor e depois uma guia New query, aparece uma superfície de editor redimensionável maior para criar e formatar suas consultas, conforme mostrado abaixo.

Editor do DB Inspector

Além disso, agora fornecemos um histórico de suas consultas anteriores. Ao clicar no botão Show query history Exibir botão do histórico de consultas {: inline-icon}, aparece uma lista das consultas executadas anteriormente no banco de dados selecionado. Clique em uma consulta na lista para uma visualização de toda a consulta no editor e pressione Enter para copiá-la no editor. Em seguida, clique em Run para executar a instrução.

Executar comando no editor de consultas

Modo off-line

Nas versões anteriores do Android Studio, desconectar-se de um processo de app ao usar o Database Inspector resultava no fechamento do inspetor e dos dados. No Android Studio 4.2, adicionamos a possibilidade de continuar inspecionando os bancos de dados do app após a desconexão de um processo, facilitando a depuração do app após uma falha.

Quando ocorre uma desconexão, o Database Inspector faz o download dos seus bancos de dados e os disponibiliza no modo off-line. Quando estiver off-line, será possível abrir tabelas e executar consultas.

Lembre-se de que, quando você se reconecta a um processo de app ativo, o Database Inspector retorna ao modo ativo e mostra apenas os dados que estão no dispositivo. Ou seja, os dados mostrados no modo off-line não são mantidos quando você se reconecta a um processo de app. Por isso, o Database Inspector não permite a edição ou a execução de instruções de modificação no modo off-line.

Assistente de upgrade para AGP

Um novo assistente de upgrade para o Plug-in do Android para Gradle pode ajudar a atualizar a versão do AGP do seu projeto.

Caixa de diálogo do assistente de upgrade do Plug-in do Android para Gradle

Criado sobre a funcionalidade de upgrade do AGP atual, essa ferramenta orienta você sobre atualizações/refatorações de todo o projeto. Ela inclui uma visualização das atualizações para ajudar a evitar possíveis mudanças interruptivas antes de executar o upgrade do AGP.

Visualização das mudanças a serem realizadas pelo Assistente de upgrade

Rastreamento do sistema: melhorias nas métricas para memória e gráficos

No CPU Profiler, o recurso System Trace agora inclui novas métricas para analisar o desempenho do app, além do seguinte:

  • Tabela de eventos. Lista todos os eventos de rastreamento na linha de execução selecionada.

  • BufferQueue. Na seção "Display", essa nova faixa mostra a contagem de buffers da superfície BufferQueue (0, 1 ou 2) do app. Isso ajuda você a entender o estado dos buffers de imagem conforme eles se movem entre os componentes gráficos do Android.

    Fila do buffer do Rastreamento do sistema

  • Frequência da CPU. Na seção "CPU cores", essa nova faixa mostra a frequência da CPU por núcleo, indicando a dificuldade de cada núcleo.

    Frequência da CPU de rastreamento do sistema

  • Process Memory (RSS). Essa nova janela mostra a quantidade de memória física atualmente em uso pelo app.

    Memória do processo de rastreamento do sistema (RSS)

Para mais detalhes, consulte Inspecionar atividades de CPU com o CPU Profiler.

Nova ação de atualização do Layout Inspector

Introduzido no Android Studio 4.0, o Layout Inspector foi projetado para inspeção em tempo real da pilha de interface do app em execução. No entanto, nem sempre você quer que o Layout Inspector reflita imediatamente o que está acontecendo no seu app, porque pode ser útil inspecionar um instantâneo do layout do app em um momento específico ou minimizar o impacto do desempenho das atualizações em tempo real no seu app.

Para carregar manualmente um instantâneo dos dados da interface do app, primeiro desative a opção Live Updates. Depois, clique no botão Refresh {: inline-icon} para fazer uma nova captura de tela da pilha de interface para inspeção. O Layout Inspector agora lembra sua preferência para manter a opção Live Updates ativada ou desativada entre as sessões.

Suporte para o Safe Args

O Safe Args é um plug-in do Gradle que gera classes simples de objeto e criação para navegação segura e acesso a quaisquer argumentos associados. O Android Studio agora inclui suporte mais abrangente para o Safe Args, conforme descrito abaixo:

  • preenchimentos automáticos para Directions, Args e as várias classes de criação;
  • suporte a plug-ins safe args do Java e Kotlin;
  • navegação da origem para XML.

Retrace do R8 agora disponível nas ferramentas de linha de comando

Disponível na versão 4.0 das ferramentas de linha de comando, o retrace do R8 é uma ferramenta autônoma para receber o stack trace original de um stack trace ofuscado.

É possível fazer o download desse pacote com o SDK Manager, que instala o retrace do R8 em android_sdk/cmdline-tools. Como alternativa, faça o download do pacote de ferramentas de linha de comando autônoma.

Para informações de uso, consulte Retrace do R8 no guia do usuário.

Implantar em vários dispositivos

Para ajudar a simplificar o teste de apps em dispositivos e níveis de API diferentes, agora você pode implantar o app em vários dispositivos ou emuladores simultaneamente seguindo estas etapas:

  1. Escolha Select Multiple Devices no menu suspenso de dispositivo de destino, que fica na parte central superior do ambiente de desenvolvimento integrado.

    Menu suspenso de dispositivos de destino

  2. Selecione os dispositivos de destino e clique em OK.

    Caixa de diálogo para modificação do conjunto de dispositivos

  3. Execute o app.

Nova configuração removable para módulos de recursos

O Plug-in do Android para Gradle 4.2 usa o bundletool 1.0.0, que apresenta uma mudança de comportamento para apps que usam módulos de recursos: qualquer módulo de recurso especificado como dist:install-time que não esteja explicitamente marcado como dist:removable se torna não removível por padrão. Essa nova configuração otimiza a fusão de módulos de tempo de instalação com o módulo base, potencialmente melhorando o desempenho do app em alguns apps.

Para manter os módulos de recursos removíveis, defina dist:removable="true" em qualquer módulo que você queira desinstalar.

Para mais informações sobre essa nova configuração, consulte a documentação da tag dist:removable na documentação do manifesto do módulo de recursos.

Aplicar mudanças

Para aumentar a produtividade durante a iteração no seu app, fizemos as seguintes melhorias em "Apply Changes" para dispositivos que executam o Android 11 ou mais recente:

Suporte para outras mudanças de código

Para dispositivos com o Android 11 ou versões mais recentes, agora é possível adicionar campos primitivos finais estáticos e implantar essas mudanças no app em execução ao clicar em Apply Code Changes Ícone de "Apply Code Changes" ou Apply Changes and Restart Activity . Ícone de "Apply Changes and Restart Activity".

Agora você também pode adicionar recursos e implantar essas mudanças no seu app em execução nos dispositivos Android 11 clicando em Apply Changes and Restart Activity Ícone de "Apply Changes and Restart Activity".

Assistentes atualizados de New Project e New Module

Os assistentes New Project e New Module foram atualizados para facilitar a navegação, selecionar um modelo e inserir informações sobre o novo projeto ou módulo.

A opção Import .JAR/.AAR Package do assistente New Module também foi removida. Para importar um JAR ou AAR para seu projeto, use a caixa de diálogo "Project Structure".

Kotlin 1.4.31

O Android Studio 4.2 inclui o Kotlin 1.4.31. Consulte o registro de mudanças do Kotlin 1.4.0 para analisar as principais modificações.

Uso descontinuado da variável de ambiente ANDROID_SDK_HOME

O uso da variável de ambiente ANDROID_SDK_HOME foi descontinuado e ela foi substituída por ANDROID_PREFS_ROOT. Para mais informações, consulte Variáveis de ambiente do emulador.

Problemas conhecidos com o Android Studio 4.2

Esta seção descreve problemas conhecidos que existem no Android Studio 4.2. Para uma lista completa, acesse a página Problemas conhecidos.

O Android Studio 4.2.0 gera projetos com a versão incorreta do Kotlin: "1.5.0-release-764"

Se você estiver usando o Android Studio 4.2.0 após atualizar para a versão 1.5.0 do plug-in do Kotlin, vai ocorrer um problema na criação dos novos projetos Kotlin feitos no Studio, devido ao seguinte erro de sincronização do Gradle:

Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0-release-764.

Como solução alternativa, substitua 1.5.0-release-764 por 1.5.0 nos arquivos build.gradle do projeto.

Erro ao usar senhas diferentes para a chave e o keystore

A partir da versão 4.2, o Android Studio é executado no JDK 11. Essa atualização causa uma mudança de comportamento subjacente relacionada às chaves de assinatura.

Ao acessar Build > Generate Signed Bundle / APK e tentar configurar a assinatura de apps para um pacote de apps ou um APK, a inserção de senhas diferentes para a chave e o keystore pode gerar este erro:

Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores

Para contornar esse problema, insira a mesma senha para a chave e o keystore.

O Android Studio não inicia após a instalação da versão 4.2

O Studio tenta importar .vmoptions anteriores e limpá-los para serem compatíveis com o coletor de lixo usado pelo JDK 11. Se esse processo falha, o ambiente de desenvolvimento integrado talvez não inicie para determinados usuários que definiram opções de VM personalizadas no arquivo .vmoptions.

Para contornar esse problema, recomendamos que você comente opções personalizadas em .vmoptions usando o caractere #. O arquivo .vmoptions pode ser encontrado nos seguintes locais:

Windows

C:\Users\YourUserName\AppData\<var>[Local|Roaming]</var>\Google\AndroidStudio4.2\studio64.exe.vmoptions

macOS

~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions

Linux

~/.config/Google/AndroidStudio4.2/studio64.vmoptions

Se o Studio ainda não iniciar depois dessa solução alternativa, consulte O Studio não inicia após o upgrade abaixo.