Hace tiempo que existe una herramienta llamada ADB (Android Debug Bridge), cuyo objetivo original era depurar diversas funciones del sistema operativo Android y permitir que las aplicaciones interactuaran con estas funciones.
Pero más tarde, los entusiastas empezaron a utilizar ADB para activar funciones ocultas del sistema o conceder permisos específicos para que las aplicaciones funcionen, por ejemplo, cuando es necesario desactivar la barra de navegación del sistema.
Android Debug Bridge (adb) es una herramienta de línea de comandos versátil que te permite comunicarte con un dispositivo
Desarrolladores de Android
Sin embargo, para hacer todo lo anterior, el usuario tenía que instalar y configurar la utilidad adecuada. Recientemente, ha surgido una aplicación web llamada WebADB que elimina la necesidad de realizar las condiciones descritas anteriormente.
¿Qué es WebADB?
WebADB es una herramienta/biblioteca que te permite utilizar ADB directamente desde el navegador web de tu ordenador, sin tener que configurarlo localmente. Utiliza la API WebUSB para comunicarse con tu dispositivo Android a través de una conexión USB desde cualquier navegador web compatible.
Por ahora, todos los navegadores más recientes basados en Chromium, incluyendo Google Chrome, Microsoft Edge y Opera, soportan la API WebUSB (fuente). Esto significa que puedes utilizar WebADB en todos estos navegadores.
Características
A continuación se presenta la lista de funciones que ofrece actualmente WebADB:
- Device Info: (Información del dispositivo) muestra información sobre el dispositivo (funciones del smartphone, nombre, modelo, etc.).
- ADB over Wi-Fi: (Habilitar ADB sobre WiFi) conecta el dispositivo al sitio a través de Wi-Fi (vale la pena señalar que incluso si se activa esta función, la necesidad de utilizar un cable no desaparece).
- Interactive Shell: (Shell ADB interactivo) la consola ADB normal.
- File Manager: (Administrador de archivos) da acceso a los archivos de tu smartphone a través de un explorador de archivos fácil de usar, permitiéndote borrarlos y descargarlos.
- Install APK: (Instalar APK) instala el archivo APK en tu dispositivo.
- Screen Capture: (Captura de pantalla) hace una captura de pantalla y permite guardarla en el PC.
- Scrcpy: transmite la pantalla de tu smartphone al ordenador y la controla de forma remota.
La herramienta es totalmente de código abierto y su código fuente está disponible en Github. Si tienes experiencia en desarrollo y programación, también puedes contribuir al proyecto.
webusb (este enlace se abre en una nueva ventana) por WICG (este enlace se abre en una nueva ventana)
Connecting hardware to the web.
El desarrollador también tiene una implementación online de WebADB, a la que se puede acceder en la siguiente URL: (Alternativamente aquí)
Cómo instalar y configurar WebADB
Para utilizar WebADB necesitará Chrome o Microsoft Edge (otros navegadores basados en Chromium también deberían funcionar). Los otros no funcionarán porque no son compatibles con WebUSB. También es necesario tener un cable para conectar el smartphone al ordenador. No hay requisitos particulares para un dispositivo Android, así que el tuyo probablemente servirá. Si tienes todo lo que necesitas contigo, entonces hay que seguir unos sencillos pasos:
- Abre la sección de Ajustes/Configuración de tu smartphone.
- Desplázate hacia abajo y toca en “Acerca del teléfono”.
- Busca el número de compilación en el menú. En Android puro bastará con desplazarse hacia abajo, en los dispositivos de otros fabricantes esta línea puede ser más profunda.
- Toca el número de compilación siete veces para desbloquear el modo de desarrollador.
- Vuelve al menú de configuración y verás el menú de desarrollador en la parte inferior de la página.
- Haz clic en el menú de desarrolladores.
- Activa la “Depuración por USB”. Para acceder a la función “ADB sobre Wi-Fi”, debes activar también la “Depuración sobre Wi-Fi”.
chrome://flags/#new-usb-backend
Abre el sitio web y haz en “Add device“
Y luego clic en “Connect“.
La aplicación web comenzará a establecer la conexión ADB y te pedirá que concedas los permisos de su dispositivo. Por lo tanto, pulsa en “Permitir” en tu dispositivo Android para permitir la depuración USB.
Ya está. Tu dispositivo Android debería estar conectado a WebADB ahora.
Cómo ejecutar ADB desde el navegador web usando WebADB
Con tu dispositivo ya conectado, puedes empezar a usar WebADB para ejecutar ADB desde el navegador web de tu ordenador y realizar varias acciones. Déjeme guiarte a través de todas las características.
Device Info
La primera pestaña accionable en WebADB es “Device Info” (Información del dispositivo). Esta función te permite ver alguna información específica sobre el dispositivo conectado.
Esta información incluye el Product Name de tu dispositivo (el nombre en clave dado por el OEM) y el modelo, que no es más que el nombre real del dispositivo (como ‘Mi A3‘ en mi caso).
Además, la aplicación web también muestra la versión del protocolo ADB que se está utilizando, así como ‘Features‘ (Características) que indican “cómo deberían funcionar algunos comandos ADB”, según el desarrollador.
La información proporcionada puede ser útil si estás proporcionando comentarios técnicos y/o estás en el desarrollo de software y modding.
ADB over WiFi
Por si no lo sabías, también es posible conectar tu dispositivo a ADB a través de WiFi. Dado que los navegadores web no soportan conexiones TCP, no es posible conectar tu dispositivo a WebADB de forma inalámbrica.
La pestaña ‘ADB over WiFi‘ en WebADB te permite configurar tu dispositivo Android para que escuche una conexión TCP/IP en el puerto 5555 (por defecto). Generalmente, esto se consigue ejecutando el comando adb tcpip 5555
, pero puede hacerse desde la aplicación web con un simple clic.
Interactive Shell
Aquí es donde las cosas se ponen realmente interesantes. WebADB te permite iniciar el shell de ADB para enviar comandos a tu dispositivo Android desde el ordenador.
Para utilizar esta función, haz clic en “Interactive Shell” y deberías ver la interfaz de línea de comandos. A continuación, puedes introducir el comando que deseas ejecutar en el shell. Los comandos de la shell te permiten hacer varias cosas, como utilizar el gestor de paquetes para eliminar el bloatware, hacer una captura de pantalla, cambiar la densidad de los PPP, cambiar las propiedades del dispositivo, etc.
Google también ha documentado los comandos shell disponibles que puedes utilizar.
Como ejemplo, la captura de pantalla de abajo muestra el comando ADB que utilicé para hacer una captura de pantalla en mi dispositivo Android.
screencap -p /sdcard/screen.png
File Manager
El Administrador de Archivos en WebADB te permite explorar el almacenamiento de tu dispositivo para ver y administrar los archivos.
Al hacer clic en la pestaña “File Manager“, la aplicación web te presentará el directorio de nivel superior/raíz de tu dispositivo. Para acceder al almacenamiento interno de tu dispositivo, navega por la lista y selecciona “sdcard“. A continuación, deberías ver todos los archivos y carpetas del almacenamiento de tu dispositivo, junto con los permisos establecidos, el tamaño de los archivos, así como la marca de tiempo de la última modificación.
Ahora, si deseas subir/transferir un archivo a tu dispositivo, ve al directorio que deseas subir. A continuación, haz clic en el botón “Upload” en la parte superior de la interfaz para abrir la ventana de selección de archivos. A continuación, sólo tienes que seleccionar el archivo que quieres transferir a tu dispositivo.
También puedes descargar archivos de tu dispositivo a tu ordenador, o eliminarlos. Para ello, sólo tienes que hacer clic en el selector circular que se muestra delante del archivo y, a continuación, hacer clic en el botón “Download” o “Delete” según lo que quieras hacer.
Esta función no puede reemplazar completamente la gestión habitual de archivos realizada a través de MTP. Además, no hay forma de copiar, pegar o mover archivos dentro del almacenamiento. Pero, sigue siendo una manera conveniente de transferir archivos hacia o desde su dispositivo Android cuando ya estás trabajando con WebADB.
Install APK
Instalar manualmente un APK suele ser útil si una determinada aplicación no está disponible en tu región, o si quieres forzar la actualización de una aplicación a la última versión que aún no está disponible en la Play Store.
Con WebADB, puedes cargar fácilmente un archivo APK en tu dispositivo con unos pocos clics. Incluso mejor, también puedes instalar un paquete APK con formato de archivo .apkm o .apks utilizando un pequeño truco.
Lo primero que necesitarás, por supuesto, es un archivo APK de la aplicación que deseas instalar. Puedes obtenerlo de fuentes de confianza como APKMirror, o F-Droid si buscas aplicaciones de código abierto.
A continuación, dirígete a la pestaña “Install APK” de la aplicación web en el navegador y haz clic en “Open” para lanzar la ventana de selección de archivos. A continuación, selecciona el archivo APK y haz clic en “Abrir” para instalarlo en tu dispositivo Android.
La interfaz de la aplicación también mostrará el progreso de la instalación y mostrará cuando haya terminado.
Screen Capture
Esta herramienta le permite tomar fácilmente una captura de pantalla de la pantalla actual de tu dispositivo Android. La herramienta no puede mostrar una vista previa en vivo de la pantalla que se está capturando. Por lo tanto, tendrás que mirar la pantalla de tu dispositivo para saber exactamente lo que estás capturando.
Una vez allí, ve a la pestaña “Screen Capture” y pulsa el botón “Capture“. Se mostrará la captura de pantalla capturada y podrás guardarla en tu ordenador pulsando el botón ‘Save‘.
Scrcpy
“Scrcpy” es una pequeña y práctica herramienta/aplicación que te permite reflejar la pantalla de tu dispositivo Android y controlarla desde cualquier ordenador con Windows, macOS o Linux. Está desarrollada por Genymobile, la empresa que está detrás del emulador de Android Genymotion. La aplicación es totalmente de código abierto con el código fuente publicado en Github.
No requiere que hagas root a tu teléfono ni que instales ninguna aplicación externa. Sólo ADB y el simple cable USB.
WebADB también incluye ‘scrcpy‘, por lo que puedes utilizarlo para ver y controlar fácilmente la pantalla de tu dispositivo directamente desde el navegador web.
Para utilizar esta función, haz clic en “Scrcpy” en la aplicación web y luego haz clic en “Start”. La herramienta establecerá una conexión con tu dispositivo y mostrará la pantalla actual al instante. A continuación, puedes utilizar el puntero del ratón para controlar la pantalla.
La interfaz también coloca una barra de navegación adicional en la parte inferior para que te resulte fácil volver a la pantalla anterior, saltar a la pantalla de inicio o abrir la pantalla de Recientes. Esto es especialmente útil si tienes activada la navegación por gestos en tu dispositivo.
La latencia también es bastante baja, por lo que no deberías encontrar ningún retraso al controlar la pantalla de tu dispositivo a través de WebADB.
Lo único que personalmente considero que falta es la posibilidad de grabar la pantalla. Supongo que sería una gran hazaña.
Palabras finales
WebADB es una pequeña herramienta increíble para aquellos que sólo quieren usar ADB sin tener que configurarlo localmente en sus ordenadores. Puedes usarla para transferir rápidamente archivos a/desde tu dispositivo, usar los comandos del shell para eliminar bloatware o arrancar tu dispositivo en modos Fastboot/Recovery, capturar y guardar capturas de pantalla directamente en tu ordenador, y mucho más.
Hay ciertas partes de la herramienta que podrían mejorarse. Por ejemplo, tener la capacidad de copiar/pegar/mover los archivos en el Administrador de Archivos sería una gran adición. Además, podría conseguir que WebADB instalara un paquete APK en mi dispositivo Android. Añadir el soporte de la extensión en el menú desplegable del tipo de archivo sería genial para que los usuarios puedan saber que otros paquetes APK también pueden ser instalados.
En cualquier caso, es una herramienta muy útil. Con el proyecto consiguiendo más cobertura y apoyo, sería emocionante ver cómo se añaden nuevas características y se pulen/mejoran las existentes.
Si te encuentras con algún error o tienes alguna sugerencia, puedes enviarla a Github. Si eres un desarrollador y quieres contribuir al proyecto, puedes crear un pull request en Github también.