Conectarse a ADB se ejecuta en otro dispositivo Android en la red
advertisement
Nombre | Remote ADB Shell |
---|---|
Versión | 1.7.2 |
Actualizar | 30 de 06 de 2022 |
Tamaño | 565 KB |
Categoría | Herramientas |
Descargas | 500mil+ |
Desarrollador | Cameron Gutman |
Android OS | Android 4.0+ |
Google Play ID | com.cgutman.androidremotedebugger |
Remote ADB Shell · Descripción
Remote ADB Shell es una aplicación de terminal que le permite conectarse al servicio ADB shell de otros dispositivos Android a través de la red y ejecutar comandos de terminal. Esto puede ser útil para la depuración remota de dispositivos Android (ejecutando herramientas como top, logcat o dumpsys). Admite múltiples conexiones simultáneas a diferentes dispositivos y mantiene vivas estas conexiones incluso cuando la aplicación está en segundo plano. Esta aplicación no requiere raíz en ninguno de los dispositivos, pero la raíz puede ser útil para configurar los dispositivos de destino. Si los dispositivos de destino no están rooteados, debe usar una computadora con el SDK de Android y los controladores USB de Google para configurarlos (se detalla a continuación).
Esta aplicación es un envoltorio alrededor del caparazón que está expuesto sobre ADB. Mantiene un historial de 15 comandos al que se puede acceder presionando prolongadamente el cuadro de comando. Si mantiene pulsada la pantalla del terminal, tendrá la opción de enviar Ctrl+C, alternar el desplazamiento automático o salir de la sesión del terminal.
Esto funciona exactamente de la misma manera que el comando "adb shell" funciona en una computadora. Debido a que esta aplicación utiliza una implementación nativa del protocolo ADB en Java, no requiere raíz en ninguno de los dispositivos ni aplicaciones de terceros en el dispositivo de destino. Los dispositivos simplemente hablan el mismo protocolo entre sí que lo harían con una computadora que ejecuta el cliente ADB desde el SDK de Android.
IMPORTANTE: Los dispositivos que ejecutan Android 4.2.2 y versiones posteriores usan claves RSA para autenticar la conexión ADB. En mis pruebas, los dispositivos que ejecutan 4.2.2 deberán estar conectados a una computadora la primera vez que se conecte a ellos (desde cada dispositivo con esta aplicación instalada). Esto les permite mostrar el cuadro de diálogo de aceptación de clave pública, que debe aceptar (y marcar "Permitir siempre desde esta computadora"). Los dispositivos que ejecutan Android 4.3 y 4.4 parecen no tener problemas para mostrar el cuadro de diálogo sin una conexión a una computadora, por lo que parece que esta es una solución específica para Android 4.2.2.
Para configurar un dispositivo de destino no rooteado, conecte el dispositivo de destino a una computadora que tenga instalado el SDK de Android y ejecute "adb tcpip 5555" desde la carpeta de herramientas de la plataforma del SDK de Android. Esto comenzará a escuchar ADB en el puerto 5555 en el dispositivo de destino. El dispositivo se puede desconectar y permanecerá configurado correctamente hasta que se reinicie.
Para los dispositivos que están enraizados (aunque no es obligatorio), puede instalar una de las varias aplicaciones "ADB WiFi" para permitir que el servidor ADB escuche a través de la red. Los dispositivos con una ROM personalizada pueden tener una opción para habilitar ADB a través de la red en el panel Opciones de desarrollador de Configuración. El uso de cualquiera de estos métodos configurará correctamente ADB para el acceso a la red con esta aplicación. El paso adicional para 4.2.2 aún se requiere para la conexión inicial.
Para conectarse a su dispositivo Android remoto, escriba la dirección IP del dispositivo y el número de puerto (5555 del ejemplo anterior) en Remote ADB Shell. Toque Conectar e intentará conectarse al dispositivo e iniciar el terminal.
Desarrolladores: la biblioteca Java ADB personalizada que he escrito para esta aplicación es de código abierto bajo la licencia BSD en https://github.com/cgutman/AdbLib
La fuente de esta aplicación está disponible bajo la licencia de Apache: https://github.com/cgutman/RemoteAdbShell
Esta aplicación es un envoltorio alrededor del caparazón que está expuesto sobre ADB. Mantiene un historial de 15 comandos al que se puede acceder presionando prolongadamente el cuadro de comando. Si mantiene pulsada la pantalla del terminal, tendrá la opción de enviar Ctrl+C, alternar el desplazamiento automático o salir de la sesión del terminal.
Esto funciona exactamente de la misma manera que el comando "adb shell" funciona en una computadora. Debido a que esta aplicación utiliza una implementación nativa del protocolo ADB en Java, no requiere raíz en ninguno de los dispositivos ni aplicaciones de terceros en el dispositivo de destino. Los dispositivos simplemente hablan el mismo protocolo entre sí que lo harían con una computadora que ejecuta el cliente ADB desde el SDK de Android.
IMPORTANTE: Los dispositivos que ejecutan Android 4.2.2 y versiones posteriores usan claves RSA para autenticar la conexión ADB. En mis pruebas, los dispositivos que ejecutan 4.2.2 deberán estar conectados a una computadora la primera vez que se conecte a ellos (desde cada dispositivo con esta aplicación instalada). Esto les permite mostrar el cuadro de diálogo de aceptación de clave pública, que debe aceptar (y marcar "Permitir siempre desde esta computadora"). Los dispositivos que ejecutan Android 4.3 y 4.4 parecen no tener problemas para mostrar el cuadro de diálogo sin una conexión a una computadora, por lo que parece que esta es una solución específica para Android 4.2.2.
Para configurar un dispositivo de destino no rooteado, conecte el dispositivo de destino a una computadora que tenga instalado el SDK de Android y ejecute "adb tcpip 5555" desde la carpeta de herramientas de la plataforma del SDK de Android. Esto comenzará a escuchar ADB en el puerto 5555 en el dispositivo de destino. El dispositivo se puede desconectar y permanecerá configurado correctamente hasta que se reinicie.
Para los dispositivos que están enraizados (aunque no es obligatorio), puede instalar una de las varias aplicaciones "ADB WiFi" para permitir que el servidor ADB escuche a través de la red. Los dispositivos con una ROM personalizada pueden tener una opción para habilitar ADB a través de la red en el panel Opciones de desarrollador de Configuración. El uso de cualquiera de estos métodos configurará correctamente ADB para el acceso a la red con esta aplicación. El paso adicional para 4.2.2 aún se requiere para la conexión inicial.
Para conectarse a su dispositivo Android remoto, escriba la dirección IP del dispositivo y el número de puerto (5555 del ejemplo anterior) en Remote ADB Shell. Toque Conectar e intentará conectarse al dispositivo e iniciar el terminal.
Desarrolladores: la biblioteca Java ADB personalizada que he escrito para esta aplicación es de código abierto bajo la licencia BSD en https://github.com/cgutman/AdbLib
La fuente de esta aplicación está disponible bajo la licencia de Apache: https://github.com/cgutman/RemoteAdbShell