Configurar ADB Android en Debian/Ubuntu

Bueno hoy os escribo un tutorial para poder utilizar comandos ADB bajo las distribuciones Debian, y por extensión, Ubuntu. Será útil para los que no quieran instalar Ubuntu de forma permanente. Todo lo indicado abajo, se puede hacer arrancando un LiveCD / Live USB. Claro, eso si, teniendo en cuenta que al apagar, todos los cambios se borrarán y para volver a ejecutar ADB habrá que hacer el tutorial de nuevo. Para más ayuda o sugerencias, pásate por el post en nuestro Foro.

Una breve introducción sobre ADB. ADB responde a las siglas Android Debug Bridge, que si lo ‘traducimos’ sería Puente de Depuración de Android. Bueno, esto a priori no nos dice nada. En realidad son un conjunto de herramientas que vienen con el SDK de Android y que nos permiten tomar el control de algunas funciones de nuestro terminal desde nuestro pc. Es decir, desde actualizar, editar, suprimir todos los archivos del sistema (root necesario) a instalar aplicaciónes, mover archivos desde/a la SD, etc.

Primero, establecemos las ‘reglas’ en udev. Es decir, abrimos consola (aplicaciones/accesorios/terminal) y tecleamos:

Para Ubuntu:

sudo gedit /etc/udev/rules.d/51-android.rules

Para Debian:

sudo su

gedit /etc/udev/rules.d/51-android.rules

En ambos casos deberemos introducir nuestra contraseña Root para realizar el proceso. En caso de usar KDE en vez de Gnome tenéis que sustituir Gedit por el editor de texto que utilicéis, Kate, Nano,…

Se nos va a abrir el editor Gedit y dentro de este archivo, tenemos que añadir la siguiente línea:

SUBSYSTEM==”usb|usb_device”, SYSFS{idVendor}==”0bb4″, SYMLINK+=”android_adb”, MODE=”0666″, USER=”root”

OJO: hay que tener un par de consideraciones para utilizar esta línea:

  • IdVendor cambia en función del fabricante. Cambia 0bb4 por el de tu fabricante mirando la siguiente tabla:

  • En el apartado User, para Ubuntu tenemos que colocar root. En caso de usar Debian tendremos que colocar el nombre de nuestro usuario. ejemplo: USER=”fulano”.

Cuando terminemos de añadir la línea GUARDAR y cerrar.

Tenemos que reiniciar los servicios udev. Se puede hacer reiniciando el ordenador, aunque es más rápido:

/etc/init.d/udev restart

Ahora nos tenemos que descargar el SDK de Android en el siguiente enlace. Estamos en Linux, así que es lo que toca. Cuando termine la descarga, lo descomprimimos. Recomiendo hacerlo en el directorio personal de home. Aunque tu puedes elegir el Escritorio o donde quieras, y adaptar las rutas del tutorial a tu decisión. Yo voy a utilizar mi directorio personal, y la carpeta la he llamado android-sdk para tener que teclear menos.

Nos vamos a Android-sdk (que acabamos de descomprimir) y en la carpeta tools. Dentro hay un archivo que se llama Android. Boton derecho sobre él, pinchamos en propiedades. Nos vamos a la carpeta parmisos, seleccionamos la opción “permitir ejecutar el archivo como un programa” y cerramos. Ahora doble click en el archivo, y le damos a la opción “ejecutar en terminal”. Así si hay algún problema para que no se ejecute, nos lo dirá.

Con Ubuntu recién instalado, no he tenido problemas. Pero es necesario tener el java instalado y algunas librerías. Si es tu caso, que te ha dado error:

  • Instala el java (Open JDK 6 en el Administrador de aplicaciones, centro de software para Ubuntu).
  • Las librerías necesarias son las siguientes:

ia32-libs lib32asound2 lib32gcc1 lib32ncurses5 lib32stdc++6 lib32z1 libc6-i386 libc6 libc6-dev

Bien, tenemos abierto el Android SDK and AVD Manager. Vamos a opción ‘Available Packages’ e instalamos:

  • Android SDK tools.
  • Android Plattform tools

Dejamos que haga sus cosas y termine. Tranquilos, ya falta poco.

Antes de enchufar el teléfono tenemos que ir a:

  • Ajustes, aplicaciones, desarrollo  y allí selecionar “Depuración USB” “USB Debug notify” (no es necesario, sólo que nos avisa) y “Ubicaciones simuladas”.

Ahora ya podemos enchufar nuestro teléfono por usb, y vamos a comprobar que funciona.

Abrimos una consola (terminal) o la de antes, nos sirve. Navegamos con ‘cd’ para entrar dentro de la carpeta donde está el ADB. En mi caso:

cd /home/iulius/android-sdk/platform-tools

Recuerda, tu no te llamas iulius, así que tendrás que cambiar las lineas conforme tengas tu SDK. Si dudas, cierra el terminal y añade solo:

cd /android-sdk/platform-tools

Ahora ejecutamos:

./adb devices

Y nos tiene que devolver algo parecido a esto:

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
SH0BDPL04538    device

Ya está. Configurado el ADB. Cada vez que queramos hacer algo, repetimos los pasos para ejecutar ./adb y lo que corresponda.

Para los cómodos (yo este paso no lo hago nunca, no me gusta). Que no quieren andar con cd para entrar en la carpeta. Pues tendríamos que ir a editar nuestro perfil para bash. Abrimos un terminal nuevo y escribimos:

sudo gedit .bashrc

Añadimos al final

export  PATH=${PATH}:/home/TU_USUARIO/android-sdk/platform-tools

export  PATH=${PATH}:/home/TU_USUARIO/android-sdk/tools

Y ya está. Todo listo para trabajar con ADB en nuestro Android. Hay opción de hacerlo por WiFi con el programa ADB Wireless (necesita root).

Fuente


8 comentarios

  1.   Trimax dijo

    Muy bueno el tutorial!

    Con Ubuntu no he necesitado modificar las rules.d, eso sí, de vez en cuando no lo reconoce bien y hay que hacer:

    sudo adb kill-server
    sudo adb start-server

    A la vez que desmarcarmos y volvemos a desmarcar la opción de depuración en el móvil (previa desconexión).

    Gracias!

    1.    el_iulius dijo

      Depende de la versión de ubuntu que tengas. Las últimas si que lo traen.
      Pero como el tuto es para Debian también tenía que incluirlas XD

      Buena apreciación para reiniciar los serivicios ADB.

  2.   Fer dijo

    Si el móvil es de otra marca, el idVendor se saca con lsusb
    Dará un listado en el que cada línea será del tipo:
    Bus 005 Device 002: ID 04e8:681c Samsung Electronics Co., Ltd Galaxy Portal/Spica Android Phone
    El idVendor será el primer cuarteto de números después de ID, en este caso 04e8. El siguiente cuarteto es el modelo, que también deberías especificar si conectas también otro gadget del mismo fabricante que no quieres controlar con ADB con SYSFS{idProduct}==”xxxx” (El segundo cuarteto después de ID).

    1.    el_iulius dijo

      he intentado hacer un tuto para todos los públicos. Con el menor tiempo en consola porque para usuarios no habituados es más lioso. También le podía haber dado permisos de ejecución al archivo android con chmod pero sería más jaleo todavía

      Aún así se agradecen todas estas puntualizaciones.

  3.   jose dijo

    gracias!!!

  4.   Jose dijo

    Estoy intentando conectar mi Galaxy S2 en Ubuntu pero no me lo detecta, me dice esto:

    List of devices attached
    emulator-5554 device
    ???????????? no permissions

    Alguna idea?

    Gracias

  5.   Pedro Mosqueda dijo

    muy bien gracias. En mi caso solo instale las librerias y me funciono perfecto. Uso ubuntu de x64

  6. Buenas.
    Tengo un problema, y es que en la lista de devices que debería aparecer mi Energy System i828, con id=2207 que ya he configurado siguiendo tu ayuda, aparece en blanco.
    Estoy usando un LiveDVD de Ubuntu 10, donde ya está instalado ej JDK de Java, y he descargado el SDK de Android. He realizado un “service udev restart” sin problemas.

    Lo único raro que me ha aparecido siguiendo la guía, es que al ejecutar como dices, el “android”, en la pestaña que aparece ya me vienen como instaladas todas las opciones, sin haber realizado yo nada…

    ¿Alguna idea del problema? Muchas gracias de antemano.

Escribe un comentario