Introdução ao Gradle para Android Studio

Tempo de leitura: 3 minutes

No Android Studio, o Gradle é usado para construir nossos projetos de aplicativos Android, desempenhando, portanto, o papel de um sistema de construção. Antes do Android Studio, no Eclipse costumávamos compilar e construir os aplicativos usando a ferramenta de linha de comando que logo foi assumida por etapas baseadas em GUI para construir e executar aplicativos Android no eclipse usando ANT. Cada ferramenta de desenvolvimento de aplicativos Android deve compilar recursos, código-fonte java, bibliotecas externas e combiná-los em um APK final.

Gradle é um sistema de construção responsável pela compilação, teste, implantação e conversão do código em arquivos .dex e, portanto, pela execução do aplicativo no dispositivo.

Como o Android Studio vem com o sistema Gradle pré-instalado, não há necessidade de instalar softwares de tempo de execução adicionais para construir nosso projeto. Sempre que você clica no botão Executar (Run) no Android Studio, uma tarefa do Gradle é automaticamente acionada e começa a construir o projeto e depois que o Gradle conclui sua tarefa, o aplicativo começa a ser executado no AVD ou no dispositivo conectado.

Um sistema de compilação como o Gradle não é um compilador, vinculador etc., mas controla e supervisiona a operação de compilação, vinculação de arquivos, execução de casos de teste e, eventualmente, agrupamento do código em um arquivo apk para seu aplicativo Android.

Existem dois arquivos build.gradle para cada projeto do Android Studio, um é para aplicativos e outro é para arquivos de compilação de nível de projeto (nível de módulo).

O processo de construção funciona conforme mostrado no diagrama abaixo.

No processo de construção, o compilador pega o código-fonte, recursos, arquivos JAR de bibliotecas externas e AndroidManifest.xml (que contém os metadados sobre o aplicativo) e os converte em arquivos .dex (arquivos executáveis Dalvik), que inclui bytecode. Esse bytecode é compatível com todos os dispositivos Android para executar seu aplicativo. Em seguida, o APK Manager combina os arquivos .dex e todos os outros recursos em um único arquivo apk. O APK Packager assina o debug ou libera o apk usando o respectivo debug ou release keystore.

Debug apk é geralmente usado para fins de teste ou podemos dizer que é usado apenas na fase de desenvolvimento. Quando seu aplicativo estiver completo com os recursos desejados e você estiver pronto para publicar seu aplicativo para uso externo, você precisará de um Release apk assinado usando um armazenamento de chaves de liberação.

Agora vamos lançar alguma luz sobre os arquivos gradle.

setting.gradle
O arquivo setting.gradle (configuração do Gradle) é usado para especificar todos os módulos usados em seu aplicativo.

build.gradle (nível de projeto)
O arquivo build.gradle de nível superior (módulo) é um arquivo de construção de nível de projeto, que define as configurações de construção em nível de projeto. Este arquivo aplica configurações a todos os módulos no projeto do aplicativo Android.

build.gradle (nível de aplicativo)
O arquivo build.gradle de nível de aplicativo está localizado em cada módulo do projeto android. Este arquivo inclui o nome do seu pacote como applicationID, nome da versão (versão apk), código da versão, mínimo e sdk de destino para um módulo de aplicativo específico. Quando você está incluindo bibliotecas externas (não os arquivos jar), você precisa mencioná-lo no arquivo gradle de nível de aplicativo para incluí-los em seu projeto como dependências do aplicativo.

Observação: se um determinado aplicativo for desenvolvido em variações para módulos individuais, como Smart Phone, Tablet ou TV, arquivos gradle separados devem ser criados para todos.

Você pode até iniciar seu sistema Gradle por meio da ferramenta de linha de comando. Os seguintes comandos são usados para isso:

  • ./gradlew build – (construir projeto)
  • ./gradlew clean build – (build project complete scratch)
  • ./gradlew clean build – (execute o teste)
  • ./gradlew wrapper – (para ver todas as tarefas disponíveis)

ART – Android Runtime

A Máquina Virtual Dalvik está morta. Sim, o Google parou de usá-lo em 2014, embora você encontre a maioria dos tutoriais do Android online, ainda não atualizados, mas esteja ciente de que a Dalvik Virtual Machine não é mais usada no Android.

O novo tempo de execução é conhecido como ART ou Android Runtime, que é muito compatível com seu antecessor Dalvik, mas vem com muitos recursos novos, como:

  • Compilação Ahead-of-Time
  • Melhor coleta de lixo
  • Depuração e diagnósticos aprimorados.