Capturando tela do Android usando shell script

Neste artigo aprenderemos como conectar o Linux à dispositivos Android usando o Android Debug Bridge. Como bônus criaremos um script para capturar a tela do dispositivo e salvar o arquivo em sua máquina local.

[ Hits: 15.740 ]

Por: Fábio Berbert de Paula em 04/12/2018 | Blog: https://fabio.automatizando.dev


Android Debug Bridge



Para fazer a mágica funcionar, precisaremos instalar o Android Debug Bridge. Trata-se de uma ferramenta via linha de comando que permite seu PC se comunicar com o dispositivo Android, podendo acessar seus arquivos, simular cliques, capturar tela, vídeo etc.

Para instalar o adb no Debian, Ubuntu ou derivados, digite:

sudo apt install adb

O próximo passo é habilitar o modo desenvolvedor no teu dispositivo Android. O processo geralmente consiste em clicar em: Configurações > Sobre o dispositivo e em seguida clicar 7 vezes na opção que mostra a versão do kernel.

Aparecerá uma mensagem na tela informando que você agora é um desenvolvedor Android. Volte em configurações, procure por "opções do desenvolvedor" e habilite a depuração USB.

Estou fazendo um resumo genérico desse passo porque cada fabricante e cada versão do Android possui um caminho diferente, porém com a ideia que estou passando você terá fundamentos para descobrir isso por conta própria.

Ok, já somos desenvolvedores Android e temos o adb no Linux. Vamos verificar quais dispositivos estão conectados ao adb. Abra um terminal e digite:

adb devices

Na primeira vez que rodar o comando ele provavelmente irá iniciar o servidor, em seguida mostrará uma lista vazia, pois ainda não temos nenhum dispositivo conectado.

Plugue o teu aparelho via cabo USB ao PC e tente novamente:

adb devices

A saída será algo parecido com:

List of devices attached
6f62d4c2        device

Isso indica que existe 01 dispositivo Android conectado ao PC e seu ID é "6f62d4c2".

Se quiser acessar o terminal do seu Android, digite:

adb shell

É isso mesmo, seu Android é um Linux modificado. É possível navegar pelo sistema usando "cd", "ls", "pwd" e demais comandos que você aprendeu.

Caso você possua mais de um dispositivo conectado ao PC, terá de informar ao adb qual deles quer acessar. Para isso será necessário informar o ID do dispositivo. No exemplo do artigo o comando seria:

adb -s 6f62d4c2 shell

Bônus - conexão remota entre adb e android

É possível se conectar ao Android via TCP/IP, sem a necessidade do cabo USB. Para isso basta que seu PC e celular estejam na mesma rede wifi.

Com o Android conectado via cabo USB, habilite a depuração via TCP/IP na porta 5555 (ou outra de sua preferência) com o comando:

adb tcpip 5555

Supondo que seu celular tenha o IP 192.168.1.100, desconecte o cabo USB e em seguida:

adb connect 192.168.1.100:5555

Você deverá receber uma mensagem de conexão com sucesso e o mesmo deverá aparecer na lista retornada por:

adb devices

Beleza, já temos o adb e aprendemos a nos conectar ao Android. Na próxima página veremos como capturar tela.

    Próxima página

Páginas do artigo
   1. Android Debug Bridge
   2. Capturando a tela do Android
Outros artigos deste autor

Formatando Disquetes

Assumindo o controle do teu Android com ADB

Transferindo arquivos com o rsync

Clicador automático de Tinder com Python

ATUALIZADO 19/01: Tragédia em Nova Friburgo/RJ

Leitura recomendada

Criando máquina virtual Linux no Android + servidor de arquivos

Imprima onde estiver com Google Cloud Print

Instalando a Custom ROM LineageOS (Android 7.1) no Moto G1 (XT1033)

Fim da era PC: Transformando o seu celular em computador de mesa!

Substituindo a partição Recovery do Android via ADB

  
Comentários
[1] Comentário enviado por albfneto em 11/12/2018 - 11:51h

Fabio, excelente o artigo, vou favoritar para testar.

¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
Albfneto,
Ribeirão Preto, S.P., Brasil.
Usuário Linux, Linux Counter: #479903.
Distros Favoritas: [i] Sabayon, Gentoo, OpenSUSE, Mageia e OpenMandriva[/i].

[2] Comentário enviado por m4n14c em 25/12/2018 - 03:20h

Com o adb rodando conforme a configuração da primeira parte do artigo, dá pra controlar o celular completamente tanto pelo cabo usb quanto por tcp ip. Tem um app chamado vysor, vc instala a extensão no chrome e ele instala um app no celular que espelha a tela e permite controlar o aparelho remotamente.

[3] Comentário enviado por fabio em 25/12/2018 - 22:25h


[2] Comentário enviado por m4n14c em 25/12/2018 - 03:20h

Com o adb rodando conforme a configuração da primeira parte do artigo, dá pra controlar o celular completamente tanto pelo cabo usb quanto por tcp ip. Tem um app chamado vysor, vc instala a extensão no chrome e ele instala um app no celular que espelha a tela e permite controlar o aparelho remotamente.


Instalei aqui para testar, bacaninha o app. Obrigado pela indicação.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts