Android Debug Bridge (ADB) es una herramienta de línea de comandos que viene incluida con el SDK de Android, permite a los desarrolladores comunicarse con un emulador o un dispositivo Android conectado directamente desde la línea de comandos. Esta herramienta podemos encontrarla en el directorio [SDK-PATH]/platform-tools, en Windows por defecto será en C:\Users\[USUARIO]\AppData\Local\Android\Sdk\platform-tools
Android Debug Bridge (adb) es una herramienta de línea de comandos versátil que te permite comunicarte con un dispositivo. El comando adb permite realizar una variedad de acciones en el dispositivo, como instalar y depurar apps, y proporciona acceso a un shell de Unix que puedes usar para ejecutar distintos comandos en un dispositivo. Es un programa cliente-servidor que incluye tres componentes:
- Un cliente, que envía comandos. El cliente se ejecuta en tu máquina de desarrollo. Puedes invocar un cliente desde un terminal de línea de comandos emitiendo un comando adb.
- Un daemon (adbd), que ejecuta comandos en un dispositivo. El daemon se ejecuta como un proceso en segundo plano en cada dispositivo.
- Un servidor, que administra la comunicación entre el cliente y el daemon. El servidor se ejecuta en tu máquina de desarrollo como un proceso en segundo plano.
adb
está incluido en el paquete de herramientas de la plataforma de Android SDK. Puedes descargar este paquete con SDK Manager, que lo instala en android_sdk/platform-tools/
. O, si quieres el paquete independiente de herramientas de la plataforma del SDK de Android, puedes descargarlo aquí.
A fin de descubrir cómo conectar un dispositivo para usar por medio de adb y cómo usar el asistente de conexión con el objetivo de solucionar problemas comunes, consulta Cómo ejecutar apps en un dispositivo de hardware.
¿Para qué sirven los comandos ADB? Podemos usar los comandos ADB para infinidad de tareas. Entre ellas encontramos reiniciar nuestro dispositivo, instalar aplicaciones de manera manual, extraer archivos, flashear una ROM o acceder al recovery y bootloader.
Activar Modo Desarrollador
Vamos a explicarte cómo conectar y controlar tu Android desde el ordenador con ADB, una herramienta cuyo nombre completo es Android Debug Bridge.
Antes de empezar con lo que es ADB, primero vas a tener que activar una opción oculta en tu Android. Para ello, entra en los ajustes del móvil y pulsa en el apartado de Información del teléfono. Allí dentro, baja a la última opción, y pulsa diez veces sobre Número de compilación para activar las opciones de desarrollador. Dependiendo del fabricante de tu móvil, quizá el número de compilación esté en otro sitio, o sea que si no lo ves prueba a usar el buscador de los ajustes. También puede que debas meter el PIN del móvil para activar las opciones de desarrollador.
Ahora vuelve a la pantalla principal de los ajustes, y pulsa en la sección de Sistema. Allí, pulsa en Avanzado para desplegar las opciones avanzadas, y cuando se desplieguen, pulsa en Opciones para desarrolladores, que es el menú que has desbloqueado en el paso anterior.
Activar la depuración USB
Para que nuestro ordenador reconozca el dispositivo necesitamos activar en el terminal la depuración por USB. En Ajustes > Información del teléfono pulsaremos varias veces sobre 'Número de compilación' hasta que aparezcan las opciones de desarrollo. Ahora entraremos en estas opciones y activaremos la 'Depuración por USB'. La primera vez que conectamos el teléfono al ordenador no preguntará si confiamos en el mismo. Si es nuestro ordenador podemos marcar la pestaña de 'Permitir siempre desde este ordenador' y luego pulsaremos en aceptar.
Una vez hayas entrado en las Opciones para desarrolladores, baja hasta al apartado de Depuración, y dentro pulsa y activa la opción de Depuración por USB.
Se te mostrará una ventana preguntándote si quieres permitirla y
advirtiéndote de sus peligros, y para continuar debes pulsar en Aceptar. Cuando ya tengas esto, podemos seguir adelante.
Descargar ADB
Ahora toca empezar con el siguiente paso. Para empezar, debes descargarte ADB en tu ordenador. Si eres desarrollador, sabrás que el SDK de Android lo tiene incluido. Pero si no vas a crear aplicaciones, lo mejor es bajarte la herramienta de forma independiente, ya que ocupa mucho menos espacio que las otras alternativas. Apenas ocupa 6 MB, frente a los 100 MB de las herramientas de línea de comandos de Android, o el 1 GB que ocupa Android Studio. Estos son los enlaces para descargar ADB:
Instalar drivers, ADB y Fastboot
Drivers, ADB y Fastboot en Windows
El ADB es una parte fundamental de Android Studio, el software para desarrollar aplicaciones en Android. Para obtener el ADB no es necesario instalar Android Studio al completo solo necesitamos algunas partes del SDK. Primero vamos a crear una carpeta SDK en C:/ para encontrarla fácil a la hora de instalar. Ahora vamos a la página de descarga del Android Studio y abajo del todo en el apartado de 'Obtener solo las herramientas de línea de comando' tenemos un paquete comprimido con extensión .zip, este es el que debemos descargar. Ahora vamos a descomprimir la carpeta que contiene y la colocamos en nuestra carpeta C:/SDK/.
Ahora entramos en C:/SDK/android-sdk-windows y ejecutamos el archivo 'SDK Manager.exe'. En el SDK Manager vamos a instalar las herramientas y los drivers. Para ello marcamos solo estas pestañas en Tools y Extras:
- Android SDK Tools
- Android SDK Plartform-tools
- Android Support Repository
- Google USB Driver
¿Qué son los comandos ADB?
ADB es una herramienta que nos permite interactuar con nuestro dispositivo de forma más avanzada. Hay que aclarar que dicha interacción se realiza mediante línea de comandos. Habitualmente, estos comandos se ejecutan desde un ordenador de sobremesa o un portátil. Se pueden ejecutar estos comandos desde un PC con Windows o con Linux o un Mac con MacOS.
Principales comandos
Hay varios comandos básicos para ADB, mediante los cuales ejecutaremos órdenes sencillas. Si sabemos algo de inglés, apreciaremos que los comandos son bastante intuitivos, y si no es el caso, basta y sobre con tener esta lista a mano.
- ADB Devices: muestra si hay o no dispositivos conectados por ABD
- ADB Push: permite enviar un archivo de nuestro PC a nuestro dispositivo. Basta con escribir el comando y pegar el archivo en la terminal.
- ADB Pull: permite enviar un archivo de nuestro smartphone al PC. Mismo funcionamiento que ADB Push.
- ADB Install: permite instalar un archivo APK.
- ADB Unistall: ¿adivinas? permite desinstalar un archivo APK.
- ADB Shell: permite controlar el dispositivo en modo texto. Más adelante veremos su utilidad, pero resumidamente, permite operar con el código de Android y las aplicaciones para modificarlo al gusto.
- ADB Reboot: fuerza un reinicio en modo normal.
- ADB Reboot bootloader: reinicia el dispositivo en modo bootloader.
- ADB Reboot recovery: reinicia el dispositivo en modo recovery.
Listado de comandos ADB más utilizados
Vamos a repasar los comandos más utilizados de ADB
Resumen
- ADB Devices: Sirve para mostrar si hay dispositivos conectados por ABD
- ADB Push: Sirve para enviar un archivo desde el PC al dispositivo conectado. Basta con escribir el comando y pegar el archivo en la terminal.
- ADB Pull: Sirve para enviar un archivo del dispositivo Android conectado al PC. Mismo funcionamiento que ADB Push.
- ADB Install: Sirve para instalar un archivo APK.
- ADB Unistall: Sirve para desinstalar un archivo APK.
- ADB Shell: Sirve para controlar el dispositivo en modo texto.
- ADB Reboot: Sirve para reiniciar el dispositivo Android en modo normal.
- ADB Reboot bootloader: Sirve para reiniciar el dispositivo Android en modo bootloader.
- ADB Reboot recovery: Sirve para reiniciar el dispositivo Android en modo recovery.
- ADB Shell screencap -p /sdcard/captura.png: Sirve para hacer una captura de pantalla del móvil y guardarla en su memoria
Lo primero que debemos hacer, enumerar los dispositivos conectados.
adb devices
Conectar con dispositivo
adb connect [IP]:[PUERTO] (por defecto el 5555)
Desconectar el dispositivo
adb disconnect [IP]:[PUERTO]
Copiar un archivo al dispositivo
adb push [RUTA-LOCAL] [RUTA-DISPOSITIVO]
Descargar un archivo desde el dispositivo
adb pull [RUTA-DISPOSITIVO] [RUTA-LOCAL]
Reiniciar dispositivo
adb reboot
Reiniciar dispositivo (arranque)
adb reboot-bootloader
Instalar APK
adb install [APK]
Reinstalar APK
adb -r install [APK]
Desinstalar APK
adb uninstall [NOMBRE-PAQUETE-APLICACION]
Obtener shell del dispositivo
adb shell
Iniciar una Activity
adb shell am start -n [PAQUETE-APLICACION]/.[ACTIVITY]
Tomar captura de pantalla
adb shell screencap [RUTA-DISPOSITIVO]
Grabar pantalla del dispositivo
adb shell screenrecord -time-limit [SEGUNDOS] [RUTA-DISPOSITIVO]
Emular botón encendido
adb shell input keyevent 26
Emular pantalla de desbloqueo
adb shell input keyevent 82
Listar paquetes instalados
adb shell pm list packages
Logcat
adb logcat
Filtrar por nivel de prioridad
adb logcat "*:W"
Filtrar por TAG y prioridad
adb logcat -s Mi_TAG:W
Buscar contenido en el buffer
adb logcat -b ejemplo
Borrar el buffer
adb logcat -c
Volcar datos del sistema en la pantalla
adb shell dumpsys
Volcar datos del sistema a un archivo
adb shell dumpstate -o /sdcard/dump.txt
Volcar datos de un servicio específico
adb shell dumpsys battery
Mostrar información sobre CPU
adb shell cat/proc/cpuinfo
Extraer APK
adb shell pm path [NOMBRE-PAQUETE]
adb pull /data/app/[NOMBRE-PAQUETE]/base.apk
Habilitar datos móviles
adb shell svc data enable
Deshabilitar datos móviles
adb shell svc data disable
Comandos fastboot
Antes de continuar hay que precisar algo. Los comandos fastboot se utilizan cuando nos encontramos en el bootloader. Estos sustituyen a los comandos adb que no funcionan porque el sistema operativo no se ha iniciado completamente. Concretamente, fastboot devices tiene una función similar al de adb devices. El resultado devuelve una lista de todos los dispositivos conectados. Si no aparece ninguno, es probable que exista un problema de comunicación entre el ordenador y el smarphone.
- fastboot oem unlock Si tenemos un dispositivo Nexus o Pixel, esta instrucción sirve para levantar las restricciones del bootloader. Debes tener en cuenta que ejecutar dicha orden borra todo el contenido de nuestro teléfono. ¡Úsalo con cuidado y solo si has hecho una copia de seguridad!
- fastboot flash Este comando se utiliza para flashear cual archivo .img que tengamos disponible en nuestro odenador. Debemos especificar en que partición queremos grabar la imagen. Podemos hacerlo de la siguiente manera: fastboot flash recovery recovery.img o fastboot flash system system.img. En el primero caso, estaríamos flasheando en la partición recovery y en el segundo en la partición system. Esto dependerá de la imagen que estemos manejando.
- fastboot flashall Al igual que la anterior instrucción, esta también sirve para flashear archivos .img. Sin embargo, con este comando podemos hacerlo con varias imágenes simultáneamente. Así, podemos flahsear boot.img, recover.img y system.img de una sola vez sin realizar el proceso una vez por cada imagen.
- fastboot boot Este comando nos permite utilizar una imagen sin necesidad de grabarla de manera permanente en la memoria ROM. Suele usarle para probar kernels o un recovery de manera esporádica.
Fuentes:
https://hackpuntes.com/listado-de-comandos-adb-mas-utilizados/
No hay comentarios:
Publicar un comentario