Esto listará los dispositivos conectados; si aparece "no autorizado", esto significa que debes desbloquear tu móvil y aceptar la conexión.
Esto indica al dispositivo que debe iniciar un servidor adb en el puerto 5555:
adb tcpip 5555
Conéctate a esa IP y ese Puerto:
adb connect <IP>:<PORT>
Si obtienes un error como el siguiente en un software de Android Virtual (como Genymotion):
adb server version (41) doesn't match this client (36); killing...
Es porque estás intentando conectarte a un servidor ADB con una versión diferente. Solo intenta encontrar el binario adb que el software está utilizando (ve a C:\Program Files\Genymobile\Genymotion y busca adb.exe)
Varios dispositivos
Siempre que encuentres varios dispositivos conectados a tu máquina necesitarás especificar en cuál deseas ejecutar el comando adb.
En caso de que el puertoadb solo sea accesible desde localhost en el dispositivo android pero tienes acceso a través de SSH, puedes redirigir el puerto 5555 y conectarte a través de adb:
Imprime todos los paquetes, opcionalmente solo aquellos cuyo nombre de paquete contiene el texto en <FILTER>.
adb shell pm list packages [options] <FILTER-STR>
adbshellpmlistpackages<FILTER-STR>adbshellpmlistpackages-f<FILTER-STR>#See their associated file.adbshellpmlistpackages-d<FILTER-STR>#Filter to only show disabled packages.adbshellpmlistpackages-e<FILTER-STR>#Filter to only show enabled packages.adbshellpmlistpackages-s<FILTER-STR>#Filter to only show system packages.adbshellpmlistpackages-3<FILTER-STR>#Filter to only show third party packages.adbshellpmlistpackages-i<FILTER-STR>#See the installer for the packages.adbshellpmlistpackages-u<FILTER-STR>#Also include uninstalled packages.adbshellpmlistpackages--user<USER_ID><FILTER-STR>#The user space to query.
adb shell pm path <PACKAGE>
Imprime la ruta al APK del dado.
adbshellpmpathcom.android.phone
adb shell pm clear <PACKAGE>
Elimina todos los datos asociados con un paquete.
adbshellpmclearcom.test.abc
File Manager
adb pull <remoto> [local]
Descarga un archivo especificado de un emulador/dispositivo a tu computadora.
adbpull/sdcard/demo.mp4./
adb push <local> <remote>
Sube un archivo especificado desde tu computadora a un emulador/dispositivo.
adbpushtest.apk/sdcard
Captura de pantalla/Grabación de pantalla
adb shell screencap <filename>
Tomando una captura de pantalla de la pantalla del dispositivo.
adbshellscreencap/sdcard/screen.png
adb shell screenrecord [options] <filename>
Grabando la pantalla de dispositivos que ejecutan Android 4.4 (nivel de API 19) y superior.
adbshellscreenrecord/sdcard/demo.mp4adbshellscreenrecord--size<WIDTHxHEIGHT>adbshellscreenrecord--bit-rate<RATE>adbshellscreenrecord--time-limit<TIME>#Sets the maximum recording time, in seconds. The default and maximum value is 180 (3 minutes).adbshellscreenrecord--rotate# Rotates 90 degreesadbshellscreenrecord--verbose
(press Ctrl-C to stop recording)
Puedes descargar los archivos (imágenes y videos) usando _adb pull_
Shell
adb shell
Obtén un shell dentro del dispositivo
adbshell
adb shell <CMD>
Ejecuta un comando dentro del dispositivo
adbshellls
pm
Los siguientes comandos se ejecutan dentro de un shell
pmlistpackages#List installed packagespmpath<packagename>#Get the path to the apk file of tha packageamstart [<options>] #Start an activity. Whiout options you can see the help menuamstartservice [<options>] #Start a service. Whiout options you can see the help menuambroadcast [<options>] #Send a broadcast. Whiout options you can see the help menuinput [text|keyevent]#Send keystrokes to device
Processes
Si deseas obtener el PID del proceso de tu aplicación, puedes ejecutar:
adbshellps
Y busca tu aplicación
O puedes hacer
adbshellpidofcom.your.application
Y imprimirá el PID de la aplicación
Sistema
adbroot
Reinicia el daemon adbd con permisos de root. Luego, debes conectarte nuevamente al servidor ADB y serás root (si está disponible)
adbsideload<update.zip>
flashear/restaurar paquetes de actualización de Android update.zip.
Registros
Logcat
Para filtrar los mensajes de solo una aplicación, obtén el PID de la aplicación y usa grep (linux/macos) o findstr (windows) para filtrar la salida de logcat:
adblogcat|grep4526adblogcat|findstr4526
adb logcat [opción] [especificaciones-de-filtro]
adblogcat
Notas: presiona Ctrl-C para detener el monitor
adblogcat*:V# lowest priority, filter to only show Verbose leveladblogcat*:D# filter to only show Debug leveladblogcat*:I# filter to only show Info leveladblogcat*:W# filter to only show Warning leveladblogcat*:E# filter to only show Error leveladblogcat*:F# filter to only show Fatal leveladblogcat*:S# Silent, highest priority, on which nothing is ever printed
adb logcat -b <Buffer>
adblogcat-b# radio View the buffer that contains radio/telephony related messages.adblogcat-b# event View the buffer containing events-related messages.adblogcat-b# main defaultadblogcat-c# Clears the entire log and exits.adblogcat-d# Dumps the log to the screen and exits.adblogcat-ftest.logs# Writes log message output to test.logs .adblogcat-g# Prints the size of the specified log buffer and exits.adblogcat-n<count># Sets the maximum number of rotated logs to <count>.
adbbackup [-apk] [-shared] [-system] [-all] -f file.backup# -apk -- Include APK from Third partie's applications# -shared -- Include removable storage# -system -- Include system Applciations# -all -- Include all the applicationsadbshellpmlistpackages-f-3#List packagesadbbackup-fmyapp_backup.ab-apkcom.myapp# backup on one deviceadbrestoremyapp_backup.ab# restore to the same or any other device
Si deseas inspeccionar el contenido de la copia de seguridad: