Android Studio 3.3 (janeiro de 2019)

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

3.3.2 (março de 2019)

Esta é uma atualização secundária que inclui várias correções de bugs e melhorias no desempenho. 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).

3.3.1 (fevereiro de 2019)

Essa é uma atualização secundária que inclui várias correções de bugs e melhorias no desempenho.

IntelliJ IDEA 2018.2.2

O ambiente de desenvolvimento integrado principal do Android Studio foi com melhorias da versão 2018.2.2 do IntelliJ IDEA.

Atualizações do Plug-in do Android para Gradle

Para saber mais sobre as novidades do Plug-in do Android para Gradle, consulte as notas da versão.

O Navigation Editor permite visualizar e criar rapidamente a navegação no seu app usando o componente de arquitetura Navigation.

Para saber mais, consulte Implementar a navegação com o componente de arquitetura Navigation.

Excluir diretórios não usados do Android Studio

Quando você executa uma versão principal do Android Studio pela primeira vez, ela busca diretórios que contêm caches, configurações, índices e registros de versões do Android Studio para os quais uma instalação correspondente não é encontrada. A caixa de diálogo Delete Unused Android Studio Directories mostra os locais, tamanhos e horários da última modificação desses diretórios não usados e fornece uma opção para os excluir.

Estes são os diretórios que o Android Studio pode excluir:

  • Linux: ~/.AndroidStudio[Preview]X.Y
  • Mac: ~/Library/{Preferences, Caches, Logs, Application Support}/AndroidStudio[Preview]X.Y
  • Windows: %USER%.AndroidStudio[Preview]X.Y

Melhorias no Lint

O lint, quando invocado pelo Gradle, é significativamente mais rápido. Projetos maiores podem esperar que o lint seja executado até quatro vezes mais rápido.

Assistente Create New Project

O assistente Create New Project está com uma nova aparência e contém atualizações que agilizam a criação de novos projetos do Android Studio.

Para saber mais, consulte Criar um projeto.

Atualizações dos criadores de perfil

O Android Studio 3.3 inclui atualizações para cada criador de perfil.

Melhor desempenho

Com base no feedback do usuário, o desempenho da renderização ao usar os criadores de perfil foi bastante aprimorado. Continue enviando feedback, principalmente se os problemas de desempenho persistirem.

Opções de rastreamento de alocação de memória do criador de perfil

Para melhorar o desempenho do app durante a criação de perfil, o Memory Profiler analisa as alocações de memória periodicamente por padrão. Se quiser, você pode mudar esse comportamento usando o menu suspenso Allocation Tracking durante o teste de dispositivos que executam o Android 8.0 (API de nível 26) ou mais recente.

Usando o menu suspenso Allocation Tracking, você pode escolher um dos seguintes modos:

  • Full: captura todas as alocações de memória de objeto. Se você tiver um app que aloque muitos objetos, poderá ter problemas significativos de desempenho durante a criação de perfil.

  • Sampled: captura uma amostra periódica de alocações de memória de objeto. Esse é o comportamento padrão e tem menos impacto no desempenho do app durante a criação de perfil. É possível que haja alguns problemas de desempenho em apps que alocam uma grande quantidade de objetos em um curto período.

  • Off: desativa a alocação de memória. Se ainda não estiver selecionado, esse modo será ativado automaticamente durante uma gravação da CPU e, em seguida, voltará à configuração anterior quando a gravação for concluída. Você pode alterar esse comportamento na caixa de diálogo de configuração de gravação da CPU.

    O rastreamento afeta objetos Java e referências JNI.

Inspecionar dados de renderização de frames

Agora, no CPU Profiler, você pode inspecionar quanto tempo leva para seu app Java renderizar cada frame na linha de execução de interface principal e no RenderThread. Esses dados podem ser úteis ao investigar afunilamentos que causam instabilidade de interface e baixas frame rates. Por exemplo, cada frame que demora mais que os 16 ms necessários para manter um frame rate eficiente é mostrado em vermelho.

Para ver dados de renderização de frame, grave um trace usando uma configuração que permita rastrear chamadas do sistema com a opção Trace System Calls. Depois de gravar o rastro, procure informações sobre cada frame na linha do tempo da gravação na seção FRAMES, conforme mostrado abaixo.

Para saber mais sobre como investigar e corrigir problemas de frame rate, leia Renderização lenta.

Fragmentos na linha do tempo de eventos

A linha do tempo de eventos agora mostra quando os fragmentos são anexados e desconectados. Além disso, quando você passa o mouse sobre um fragmento, uma dica mostra o status dele.

Ver texto formatado para payloads de conexão no Network Profiler

Anteriormente, o Network Profiler mostrava apenas texto bruto de payloads de conexão. O Android Studio 3.3 agora formata alguns tipos de texto por padrão, incluindo JSON, XML e HTML. Nas guias Response e Request, clique no link View Parsed para mostrar o texto formatado e clique no link View Source para o texto bruto.

Para saber mais, consulte Inspecionar tráfego de rede com o Network Profiler.

Download automático de componentes do SDK

Quando o projeto precisa de um componente do SDK das plataformas SDK, NDK ou CMake, o Gradle agora tenta fazer o download automático dos pacotes necessários, desde que você tenha aceitado anteriormente todos os contratos de licença relacionados usando o SDK Manager.

Para saber mais, consulte Download automático de pacotes ausentes com o Gradle.

Suporte a Clang-Tidy

O Android Studio agora oferece suporte a análise de código estático usando o Clang-Tidy para projetos que incluem código nativo. Para ativar o suporte ao Clang-Tidy, atualize seu NDK para r18 ou mais recente.

Para ativar ou reativar as inspeções, abra a caixa de diálogo Settings ou Preferences e navegue até Editor > Inspections > C/C++ > General > Clang-Tidy. Quando você selecionar essa inspeção na caixa de diálogo Settings ou Preferences, a lista de verificações Clang-Tidy ativadas e desativadas também será mostrada na seção Option do último painel à direita. Para ativar outras verificações (em inglês), adicione-as à lista e clique em Apply.

Para configurar o Clang-Tidy com outras opções (em inglês), clique em Configure Clang-Tidy Checks Options e inclua-as na caixa de diálogo que é aberta.

Remoção de opções para personalização de C++

As seguintes opções foram removidas da caixa de diálogo Personalizar suporte para C++:

  • Exceptions Support (-fexceptions)
  • Suporte a informações do tipo de momento de execução (-ftti)

Os respectivos comportamentos são ativados para todos os projetos criados pelo Android Studio.

Versão do CMake 3.10.2

O CMake versão 3.10.2 agora está incluído no SDK Manager. Observe que o Gradle ainda usa a versão 3.6.0 por padrão.

Para especificar uma versão do CMake para o Gradle usar, adicione o seguinte ao arquivo build.gradle do seu módulo:

    android {
        ...
        externalNativeBuild {
            cmake {
                ...
                version "3.10.2"
            }
        }
    }
    
  

Para saber mais sobre como configurar o CMake em build.gradle, consulte Configurar o Gradle manualmente.

Nova sintaxe “+” para especificar versões mínimas do CMake

Ao especificar uma versão do CMake no arquivo build.gradle do seu módulo principal, você pode anexar um “+” para fazer a correspondência com o comportamento do comando cmake_minimum_required().

Cuidado: usar a sintaxe "+" com outras dependências de build não é recomendado, já que as dependências dinâmicas podem causar atualizações inesperadas e dificuldades para resolver as diferenças de versão.

Os Android App Bundles agora têm suporte a Apps instantâneos

O Android Studio agora permite criar Android App Bundles com suporte total ao Google Play Instant. Em outras palavras, agora é possível criar e implantar experiências instantâneas e de instalação com um único projeto do Android Studio e as incluir em um único Android App Bundle.

Se você estiver criando um novo projeto do Android Studio usando a caixa de diálogo Create New Project, marque a caixa ao lado de Configure your project > This project will support instant apps. O Android Studio cria um novo projeto de app como normalmente faria, mas inclui as seguintes propriedades no manifesto para adicionar suporte a apps instantâneos ao módulo base do app:

    <manifest ... xmlns:dist="http://schemas.android.com/apk/distribution">
        <dist:module dist:instant="true" />
        ...
    </manifest>
    
  

Em seguida, você pode criar um módulo de recursos instantâneos selecionando File > New > New Module na barra de menus e selecionando Instant Dynamic Feature Module na caixa de diálogo Create New Module. Não se esqueça de que a criação desse módulo também ativa o módulo base do app para experiências instantâneas.

Para implantar o app em um dispositivo local como uma experiência instantânea, edite a configuração de execução e marque a caixa ao lado de General > Deploy as instant app.

Sincronização de projeto de variante única

Sincronizar seu projeto com a configuração do build é uma etapa importante para permitir que o Android Studio entenda como o projeto está estruturado. No entanto, esse processo pode levar muito tempo em projetos grandes. Caso seu projeto use diversas variantes de build, você pode otimizar as sincronizações dele limitando-as apenas à variante selecionada no momento.

Você precisa usar o Android Studio 3.3 ou mais recente com o Plug-in do Android para Gradle 3.3.0 ou mais recente para ativar essa otimização. Quando você atende a esses requisitos, o ambiente de desenvolvimento integrado pede que você ative essa otimização ao sincronizar seu projeto. A otimização também é ativada por padrão em novos projetos.

Para ativar essa otimização manualmente, clique em File > Settings > Experimental > Gradle (Android Studio > Preferences > Experimental > Gradle em um Mac) e marque a caixa de seleção Only sync the active variant.

Observação: no momento, essa otimização oferece suporte a projetos que contêm apenas a linguagem de programação Java. Se, por exemplo, o ambiente de desenvolvimento integrado detecta código Kotlin ou C++ no seu projeto, ele não ativa a otimização automaticamente, e não é recomendado que você a ative de forma manual.

Para saber mais, consulte Ativar sincronização de projeto de variante única.

Fornecer feedback rápido

Se você optou por compartilhar estatísticas de uso para melhorar o Android Studio, estes dois novos ícones vão ser mostrados na barra de status, na parte de baixo da janela do ambiente de desenvolvimento integrado:

Basta clicar no ícone que melhor representa sua experiência atual com o ambiente de desenvolvimento integrado. Ao fazer isso, o ambiente de desenvolvimento integrado envia estatísticas de uso que permitem que a equipe do Android Studio entenda melhor sua opinião. Em alguns casos, por exemplo, ao indicar uma experiência negativa com o ambiente de desenvolvimento integrado, você tem a oportunidade de fornecer outro feedback.

Se ainda não tiver feito isso, ative o compartilhamento das estatísticas de uso: abra a caixa de diálogo Settings (Preferences no Mac), navegue até Appearance & Behavior > System Settings > Data Sharing e selecione Send usage statistics to Google.