ADB Android y Fastboot son dos herramientas muy utilizadas y de obligatorio uso para desarrolladores Android y para aquellos usuarios que necesiten, por ejemplo, cambiar la ROM o instalar un Recovery personalizado, por ejemplo, para hacer root.
Estas dos herramientas funcionan en modo de comandos, desde una ventana de MS-DOS, por lo que a simple vista para muchos usuarios puede resultar confusa e incluso complicada. Para que os hagáis una idea se ve así. Por ello, en este manual os vamos a recopilar los principales comandos más utilizados para realizar tareas básicas de configuración avanzada de sistemas Android.
Qué es el adb Android
Cómo define la Wikipedia: Android Debug Bridge (Conector o puente para depuración de Android), o ADB, es un juego de herramientas incluido en el paquete SDK de Android. Consiste en programas con función tanto de cliente, como de servidor, que se comunican entre ellos. El uso normal del ADB se realiza desde la línea de comandos, aunque existen numerosos interfaces gráficos para controlarlo.
Tal y como suena, es la abreviatura de Android Debug Bridge. Si lo quisiésemos traducir, podríamos intentarlo diciendo que es un puente de depuración de Android, es decir, una herramienta necesaria para arreglar desaguisados entre otras cosas. Gracias a ADB podemos crear un vínculo de conexión entre nuestro smartphone y el PC. De esta forma podremos ejecutar comandos que activarán diversas funciones como copiar archivos o reiniciar el dispositivo en modo bootloader (gestor de arranque).
Además, ADB necesita de una terminal o consola de comandos para que podamos llegar a trabajar. Por lo tanto, ya te avisamos que, si vas a utilizar Windows, será necesario que instales los drivers ADB universales. Y una vez los tengas instalados, ya podrás escribir ‘CMD‘ en el buscador de Windows, donde podrás acceder a la ventana de comandos. En cambio, si tienes un dispositivo de Apple, es decir, un MacOS, basta con que abras una terminal. Para conseguirlo, tendremos que pulsar en el icono de la lupa y escribir ‘terminal‘. Cuando consigamos abrirla, deberemos copiar el siguiente comando para que comiencen a descargarse los drivers necesarios: ‘bash <(curl -s https://raw.githubusercontent.com/corbindavenport/nexus-tools/master/install.sh)’ (sin las comillas).
Qué es el Fastboot
Esta otra herramienta nos permite acceder a nuestro móvil para realizar cambios a nivel de sistema. Con este software podremos, a través de un cable USB y nuestro PC, desbloquear el bootloader, flahsear el firmware o reiniciar en el famoso modo recovery. Este protocolo de Android está desactivado en algunos smartphones, que requieren permisos root para poder activarlo. Además, cada smartphone cuenta con su propia combinación para entrar a este modo.
Además, es una de esas herramientas que encontramos en todos los terminales con el sistema operativo de Google, la cual nos permite hacer diferentes funciones Y es que Fastboot permite modificar el filesystem mediante una conexión USB al smartphone. Y no solo esto, sino que también nos dejará modificar el recovery, la ROM del teléfono, borrar el userdata, system, cache, etc. Eso sí, hay que tener en cuenta que cada smartphone tiene su combinación para llegar a poder acceder a esta herramienta de software.
Archivos necesarios para adb y fastboot en Android
Para poder hacer uso de estas herramientas necesitaremos los binarios correspondientes y las dependencias, en forma de librerías .dll. La lista de estos archivos es:
- adb.exe
- fastboot.exe
- AdbWinUsbApi.dll
- AdbWinApi.dll
Tanto el adb en Android como el fastboot y las librerías suelen instalarse automáticamente junto a Android Studio y todo el SDK de Android. Como el entorno de desarrollo de Android ocupa varios gigas y estas sencillas aplicaciones apenas superan los 10 megas podemos descargarlas separadas del SDK desde múltiples sitios, por ejemplo, desde los foros de XDA. Una vez tenemos estos archivos podemos optar por dos opciones:
- La primera de ellas y la más sencilla y segura es guardarlos todos ellos en una misma carpeta en nuestro disco duro (por ejemplo en C: o en el mismo escritorio) y cuando abramos una ventana de MS-DOS situarnos mediante el comando cd en ella, para poder ejecutar las herramientas que deseemos.
- La segunda de ellas, recomendable si hacemos uso habitual de adb y fastboot, es copiar los 4 archivos anteriores a la ruta C:WindowsSystem32. De esta manera simplemente abriendo una ventana de MS-DOS, independientemente de nuestra ruta, podremos ejecutar las aplicaciones escribiendo adb o fastboot.
Comandos básicos de ADB
Ahora bien, hay una serie de comandos básicos a los que podremos recurrir en diferentes momentos para realizar distintas acciones en los dispositivos móviles Android. Por lo tanto, te recomendamos que eches un vistazo a cada uno de ellos, pues te explicaremos para qué sirven y qué es lo que tendrás que escribir en el ordenador para llegar a usarlo por tu cuenta.
- adb devices
Este comando nos muestra en pantalla la lista de dispositivos conectados en modo adb a nuestro ordenador. Es el primer comando que debemos ejecutar ya que si nuestro smartphone aparece es que la comunicación es correcta y los drivers son los adecuados.
- adb push <fichero> <ruta>
Con este comando enviamos un archivo a nuestro dispositivo. Es muy práctico cuando las funciones de almacenamiento masivo no funcionan correctamente. Debemos especificar la ruta donde se guardará el archivo enviado.
- adb pull <fichero>
Justo el comando inverso. Nos permite copiar un archivo desde nuestro smartphone al ordenador.
- adb install <aplicación.apk>
Este comando nos permite instalar aplicaciones en formato apk en nuestro dispositivo.
- adb uninstall <aplicación.apk>
Nos permite desinstalar una aplicación, al contrario que el comando anterior.
- adb shell
Nos carga un terminal que nos permite controlar nuestro dispositivo en modo texto. Es una opción para usuarios avanzados, pero muy práctica, por ejemplo, si tenemos problemas con los permisos.
- adb reboot
Este comando reinicia nuestro dispositivo en modo normal, para cargar Android (o el sistema operativo instalado) automáticamente.
- adb reboot-bootloader / reboot recovery
Con estos comandos podemos reiniciar el teléfono en el modo bootloader o en el modo recovery, según lo que necesitemos en cada momento.
Comandos básicos de Fastboot
Los comandos de fastboot sólo funcionan cuando nuestro dispositivo está en modo bootloader, por lo que si tenemos el dispositivo en modo adb estos comandos no funcionarán. Siempre podemos utilizar el comando adb reboot-bootloader para que el dispositivo se reinicie automáticamente en el modo compatible con Fastboot.
- fastboot devices
Su función es la misma que la de adb devices, es decir, comprobar que el dispositivo está correctamente conectado al ordenador y es detectado por esta herramienta.
- fastboot oem unlock
Este comando es utilizado por muchos fabricantes como Sony o Google en sus dispositivos para liberar el bootloader y poder, por ejemplo, instalar un recovery o hacer root. Este comando nos mostrará una serie de pasos (entre los que nos pedirá la clave secreta de desbloqueo) para proceder con la tarea.
- fastboot flash
Este comando nos permite flashear cualquier archivo .img descargado para nuestro dispositivo. 4 sencillos ejemplos de flash más comunes son:
- fastboot flash recovery recovery.img -> Flashea e instala el recovery en nuestro dispositivo.
- fastboot flash boot boot.img -> Cambia el sistema de arranque (boot) de nuestro dispositivo, necesario para poder cargar el recovery en muchos casos.
- fastboot flash radio radio.img -> Instala los nuevos controladores de radio.
- fastboot flash system system.img -> Instala un nuevo sistema completo.
- fastboot flashall
Este comando nos permite flashear automáticamente todos los archivos .img que tengamos descargados y copiados en la ruta de adb y fastboot. Muy útil cuando hay que flashear varios archivos en un dispositivo, por ejemplo, cuando ha quedado en modo soft brick.
- fastboot boot <imagen>
Esta función nos permite cargar «en modo live» una imagen del sistema operativo para probarla sin necesidad de escribir los datos en la memoria interna. La suelen utilizar los desarrolladores para probar un nuevo kernel o recovery, aunque de cara al usuario la utilidad práctica está algo reducida.
¿Debo hacer el fastboot si no tengo los conocimientos?
Si eres una de esas muchas personas a las que seguramente este artículo les haya abrumado por la cantidad de lenguaje técnico y palabrejas que incluye, quizás te estés preguntado si es o no es lo adecuado proceder a realizar este proceso en tu teléfono móvil. La primera respuesta en este momento es, si no tienes los conocimientos necesarios, no; bajo ningún concepto tendrás que emplear este método al menos sin la supervisión de algún profesional, por lo que deberás tener mucho cuidado a la hora de valorar cuando hacerlo y cuando no.
Si que es cierto que el uso de un fastboot solo se suele realizar cuando nuestro teléfono móvil se encuentra en un estado crítico y poco queda para poner una solución al problema que acusa el smartphone, por lo que acabamos acudiendo a esta solución; pero en el caso de tener que echar mano a la desesperada a esta herramienta para desarrolladores, lo mejor es que si no tenemos ni idea de cómo usarla y tampoco nos vemos muy ágiles para realizarlo mediante un tutorial, lo dejemos en manos de profesionales o de alguna persona que esté acostumbrada a realizar estos procesos en los teléfonos móviles y por tanto, la integridad del nuestro esté asegurada.