miércoles, 16 de noviembre de 2016

Como instalar Android Debug Bridge (adb) en Debian


Android Debug Bridge (adb) es una herramienta de línea de comandos versátil que le permite comunicarse con una instancia de emulador o un dispositivo Android conectado. 

Facilita una variedad de acciones de dispositivo, como instalar y depurar aplicaciones, y proporciona acceso a un shell de Unix que puede utilizar para ejecutar una variedad de comandos en un emulador o dispositivo conectado. Es un programa cliente-servidor que incluye tres componentes:
  • Un cliente, que envía comandos. El cliente se ejecuta en su máquina de desarrollo. Puede invocar a un cliente desde un terminal de línea de comandos emitiendo un comando adb./
  • Un daemon, que ejecuta comandos en un dispositivo. El daemon se ejecuta como un proceso de fondo en cada emulador o instancia de dispositivo.
  • Un servidor, que gestiona la comunicación entre el cliente y el daemon. El servidor se ejecuta como un proceso de fondo en su máquina de desarrollo.

Instalación

Para instalar adb en Debian GNU/Linux vamos a un terminal y teclear:

sudo aptitude install android-tools-adb

Configuración 

Es necesario configurar las reglas para que nuestro sistema reconozca el equipo Android que conectemos. 

1:_ Conectamos el equipo, Smartphone o Tableta, a nuestro PC vía USB.

2:_ Tecleamos en una terminal el comando lsusb, nos debe presentar una salida como la siguiente.

Satellite-P505:~$ lsusb
Bus 002 Device 002: ID 04f2:b128 Chicony Electronics Co., Ltd 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 002: ID 062a:0000 Creative Labs Optical mouse
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 1004:633e LG Electronics, Inc. 
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
En este caso vemos sombreado la sección donde aparece mi equipo LG conectado donde debemos identificar el ID Vendor (identificación de la marca del equipo) y el ID Product (identificación del equipo conectado) que son necesarios para una correcta configuración. ID Vendor son los primeros cuatro digitos despues de ID y el ID Product son los cuatro dígitos posteriores al dos puntos.


NOTA
Cada equipo tiene un ID Product diferente, debemos identificarlo en cada caso.
3:_  Ahora creamos un archivo con las reglas de detención del equipo conectado.
sudo nano /etc/udev/rules.d/99-android.rules
Escribimos lo siguiente dentro del archivo 99-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="xxxx", MODE="0666", OWNER="USER

  • Cambie xxxx por el ID Vendor del equipo conectado.
  • Cambie USER por el nombre del usuario con el que nos logueamos en la PC.

4:_  Editamos la reglas de USB Mode Switch.
sudo nano /lib/udev/rules.d/40-usb_modeswitch.rules
Agregamos al final del archivo lo siguiente.
ATTR{idVendor}=="xxxx", ATTR{idProduct}=="yyyy", RUN+="usb_modeswitch '%b/%k'"

  • Cambie xxxx por el ID Vendor del equipo conectado y cambie yyyy por el ID Product del equipo conectado.

5:_ Por ultimo reiniciamos el servicio de la reglas.
sudo services udev restart
Ya con esto tenemos configurado adb correctamente en nuestro sistema. 

Comprobamos la configuración de adb, reiniciamos el servicio:
adb kill-server
adb start-server
Nos mostrara el siguiente mensaje.
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
Comprobamos si detecta el equipo conectado. NOTA
NOTA
El Smartphone o Tableta debe tener la opción de Depuración USB activada
adb devices

Listo!!