Manipulación de smartphones con Android desde la consola de Linux
En esta entrada aprenderemos a manipular dispositivos móviles que tengan Android instalado a través de la consola en Linux. Esto es útil al momento de instalar aplicaciones, navegar entre los directorios del equipo, depurar las base de datos, etc. Además, no hay ningún fabricante de móviles (al menos que yo conozca) que proporcione herramientas para controlar los dispositivos desde Linux. En mi caso, tengo un HTC Tattoo el cual solo puede ser manipulado desde Windows usando HTC Sync
Con el HTC Tattoo y la mayoría de los smartphones con Android es posible usar la opción de almacenamiento en Linux sin ningún tipo de configuración especial. Simplemente se conecta el equipo, se ejecuta la aplicación Connect to PC y se selecciona Disk Drive con lo cual podremos acceder a la memoria SD. Pero, para realizar operaciones avanzadas necesitaremos seguir estos pasos:
1. Instalar el SDK de Android
La instalación y configuración de Android se explica en la anterior entrada: Introducción a la programación con Android.
2. Configurar el path del SDK
Para trabajar cómodamente con los comandos que nos proporciona el SDK, ejecutaremos el siguiente comando (reemplazando la ruta del SDK por la tuya):
echo "export PATH=$PATH:/ruta/del/sdk/tools" source ~/.bashrc
3. Instalar la máquina virtual de Java
Recomiendo usar los instaladores de la página de Sun. También puedes hacerlo desde los repositorios de tu distro.
4. Crear una regla en udev
Debemos ahora crear una regla en udev para que al momento de conectar el dispositivo lo podamos usar con el SDK de Android. Así que creamos y editamos como root el archivo /etc/udev/rules.d/99-android.rules y dentro ponemos:
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", SYMLINK+="android_adb", MODE="0666"
Note que estoy usando el idVendor 0bb4 que es el correspondiente al HTC Tattoo. Para conocer el de su smartphone, debe conectarlo y usar el comando lsusb.
5. Conectarse al dispositivo
Conectamos el smartphone (sí, tenía que estar desconectado
), y seleccionamos la opción HTC Sync… por supuesto, vamos a obtener un error que dice que no encontró el HTC Sync en el PC… lo bueno es que con esto se activa el modo depuración del USB, el cual nos permitirá conectarnos desde la terminal de Linux. Primero debemos mirar si se reconoce el dispositivo ejecutando este comando:
Si todo sale bien, veremos algo como esto:
* daemon started successfully *
List of devices attached
HT9A3LG11652 device
HT9A3LG11652 es el nombre de mi dispositivo; este nombre nos permitirá referenciarlo al momento de ejecutar comandos sobre el desde CLI de Linux. Veamos qué podemos hacer ahora que tenemos el smartphone conectado…
adb -s HT9A3LG11652 shell #ejecutar una shell adb -s HT9A3LG11652 push archivo_local archivo_destino #copiar un archivo al smartphone adb -s HT9A3LG11652 pull archivo_remoto archivo_local #copiar un archivo desde el smartphone adb -s HT9A3LG11652 shell rm -r /system/sd/archivo #borrar archivos del smartphone adb -s HT9A3LG11652 install nombre_aplicacion.apk #instalar aplicaciones adb -s HT9A3LG11652 uninstall nombre.paquete #desinstalar aplicaciones
Eso es todo por ahora… cualquier duda, comentario o sugerencia es bienvenido. ¡Hasta la próxima!
10 Comentarios | deja el tuyo




