ADB: Um ator invisível

672 views

Published on

Slides da palestra apresentada no dia 01/04 durante o encontro do GDG abordando como usar alguns recursos mais avançados do Adb (Android Debug Bridge)
Palestra elaborada por Eduardo Carrara e Felipe Pedroso.

Published in: Technology

ADB: Um ator invisível

  1. 1. ADB: Um ator invisível Eduardo Carrara Felipe Pedroso
  2. 2. Agenda • O que é? • Como funciona? • Comandos básicos • Shell • Sem os fios!
  3. 3. O que é? • ADB = Android Debug Bridge • Ferramenta de linha de comando que permite a comunicação com dispositivos ou instâncias do emulador Android • É um aplicativo client-server que roda no dispositivo e na máquina
  4. 4. Comandos Básicos • Sintaxe: “adb <comando>” – Para escolher o device/emulador:“adb –s <serialNumber> <comando>” • Comandos básicos: – start-server / kill-server → inicia/finaliza o server do adb – devices → lista os dispositivos conectados – logcat → exibe o logcat (sistema de logs) – install / uninstall→ Instala ou desinstala um APK – push / pull → copiar arquivos entre device e PC – reboot → reinicia o dispositivo
  5. 5. Shell Devs just wanna have fun
  6. 6. am / pm am → Activity Manager ● Permite enviar comandos para executar ações de sistema. ● Iniciar Activities, Serviços, Broadcasts etc. adb shell am start -a android.intent.action.VIEW pm → Package Manager ● Possibilita ações e requisições relacionadas aos pacotes das aplicações. ● Listar pacotes, permissões, usuários, etc. adb shell pm list packages
  7. 7. dumpsys ● ‘Dump’ das informações sobre os serviços do sistema (meminfo, battery, cpuinfo, wifi, etc) adb shell dumpsys <service_name> ● Para listar quais serviços estão disponíveis: adb shell service list
  8. 8. sqlite3 ● Permite explorar os arquivos .db do sistema/apps através de comandos SQL ● Para explorar o database de contatos: cd data/data/com.android.providers.contacts sqlite3 databases/contacts2.db
  9. 9. input ● Permite simular eventos de input no dispositivo (touch, teclas, dpad, etc) input [<source>] <command> [<args>] ● Para fazer um swipe na tela: adb shell input swipe 400 200 50 200
  10. 10. getevent / sendevent ● getevent: provê informações sobre dispositivos de input e monitorar os eventos direto no kernel adb shell "getevent -lt /dev/input/event2" ● sendevent: permite simular os eventos, mas no mesmo “protocolo” do getevent
  11. 11. Outros comandos ● getprop/setprop ● service ● bootanimation ● start/stop ● screenrecord ● screencap
  12. 12. Wireless ADB Olha mãe, sem os fios!
  13. 13. Wireless ADB ● Conecte seu device ao cabo USB ● Habilite o modo de debug adb tcpip <porta> ● Desconecte o cabo adb connect <ip>:<porta> ● Para voltar à conexão original: adb usb
  14. 14. Dúvidas? • Eduardo Carrara – @DuCarrara – facebook.com/ducarrara – br.linkedin.com/in/eduardocarrara • Felipe Pedroso – @felipeapedroso – facebook.com/felipe.a.pedroso – br.linkedin.com/in/felipeapedroso
  15. 15. Muito obrigado!
  16. 16. Referências • http://developer.android. com/tools/help/adb.html • https://source.android.com/

×