Executando verificação de segurança...
2

[Linux] Instalando emulador de android para desenvolvimento

Olá, hoje eu estava querendo fazer a instalação de um emulador de android no meu Debian para usar durante o desenvolvimento de um aplicativo com Expo, então fui no site do Android Studio e baixei as ferramentas de linha de comando, e fiz uma instalação do Android 6.0 x86 que já serve para suprir minhas necessidades, dai resolvi escrever essa postagem para ajudar quem deseja fazer o mesmo que eu, já que a instalação de outros emuladores ou ate mesmo do Android Studio completo iria consumir muitos recursos.

Então vamos lá!

Instalando o Java

As ferramentas de linha de comando do Android Studio assim como a IDE são feitos em Java então é preciso fazer a instalação do mesmo em seu sistema, para isso eu usei o ASDF como instalador, usando ele a instalação em qualquer distro de qualquer versão do Java é bem fácil, então instale o ASDF seguindo esse guia e depois instale o plugin do java e a versão desejada, depois é só definir a versão escolhida como global e já é possivel usar tranquilamente o runtime, aqui eu usei os seguintes comandos:

asdf plugin add java
asdf install java openjdk-11.0.2
asdf global java openjdk-11.0.2

Eu escolhi a versão openjdk-11 porque sei que ela é compativel com as ferramentas e com o gradlew caso queria compilar algum app feito em React Native puro.

Baixando e configurando as ferramentas de linha de comando

Agora podemos fazer a instalação das ferramentas, para isso vá no site do Android Studio e na sessão de "Command line tools only" faça o download da versão para linux, depois abra uma janela no terminal e crie a pasta onde o SDK do android vai ficar, aqui eu escolhi a ~/android-sdk mas pode ser qualquer uma, depois entre nessa pasta e crie outra com o nome cmdline-tools, em seguida entre dentro dela e extraia o arquivo zip das ferramentes, quando terminar renomeie a pasta criada para latest, pronto, aqui já está instalado, mas ainda é preciso configurar uma variável de ambiente e colocar o diretório no PATH da linha de comando, para isso abra o arquivo ~/.zshenv caso use zsh ou o ~/.bashrc caso ainda use bash, no final desse arquivo é preciso definir a variável ANDROID_HOME e adicionar mais uma pasta no PATH, para isso use a palavra chave export definindo o nome da variável e seu valor, no PATH é preciso adicionar antes das pastas padrões o local das ferramentas, um exemplo de configuração é o que eu fiz aqui:

export ANDROID_HOME="$HOME/android-sdk"
export PATH="$ANDROID_HOME/cmdline-tools/latest/bin:$PATH"

Com isso você deve fechar seu terminal e abrir novamente para que as configurações sejam carregadas, se você usar o ohmyzsh pode simplesmente rodar omz reload que já vai funcionar tudo.

Instalando o emulador e criando dispositivo

Com isso podemos fazer a instalação do emulador, mas para que ele funcione vai ser preciso instalar outras coisas alem da imagem do sistema, são elas:

  • platform-tools: Contem o ADB e algumas outras ferramentas;
  • platforms: Possui alguns arquivos de configuração.

O platforms eu sempre instalo a mesma versão da imagem do sistema, aqui eu gosto de usar o Android 6.0 como disse lá no começo, então vamos fazer a instalação dele, para isso use os seguintes comandos:

echo \
  'emulator' \
  'platform-tools' \
  'platforms;android-23' \
  'system-images;android-23;default;x86' | \
  xargs -n1 sdkmanager --install

O sdkmanager vai perguntar se aceita a licença, você deve aceitar com y, agora é só esperar a instalação dos pacotes terminar.

Depois que tudo estiver instalado ainda é preciso adicionar outra pasta no PATH, abra o arquivo(~/.bashrc | ~/.zshenv) de configuração do seu shell, e adicione a seguinte linha no final:

export PATH="$ANDROID_HOME/emulator:$PATH"

Reinicie seu shell(omz reload ou reabrindo o terminal) e agora vamos criar o dispositivo virtual, para isso vamos usar o avdmanager, a criação é bem simples, você só precisa definir o nome e o pacote básico de onde vem o sistema, veja um exemplo no meu caso:

avdmanager create avd \
  -n android-6 \
  -k 'system-images;android-23;default;x86'

Aqui os argumentos são bem simples:

  • -n define o nome do dispositivo;
  • -k define o pacote da imagem do sistema.

Quando rodar esse comando ele vai perguntar se deseja criar um hardware customizado, eu não modifico o meu, já tentei fazer uma vez mas não deu certo então eu apenas dou enter e deixo ele criar o disposito.

Rodando e mostrando o consumo

Para rodar o sistema basta chamar o comando emulator passando o nome do dispositivo com um @ no começo(ex: @android-6), e esperar iniciar, quando fechar o emulador pela primeira vez ele vai criar um snapshot para iniciar o sistema de imediato na próxima vez que for usar.

Consumo

É isso obrigado por ler, espero ter ajudado e me siga no github & instagram :)

Carregando publicação patrocinada...