Com instal·lar adb i fastboot, les eines de comunicació entre ordinador i telèfon mòbil

Què són adb i fastboot?

adb i fastboot són dos programes disponibles per a Windows, Linux i macOS que permeten enviar comandes als telèfons mòbils que funcionen amb sistema operatiu Android. Aquestes comandes faciliten enviar-hi i rebre fitxers, instal·lar-hi programari i fins i tot controlar la pantalla del mòbil des de l’ordinador. adb es diu així per Android debug bridge, és a dir, “pont per a proves per a Android”. fastboot és una eina més simple i complementària: permet fer molt poques coses però les fa en un entorn que s’anomena gestor d’arrencada. Amb el gestor d’arrencada es poden fer coses abans que Android es carregui, cosa que és útil quan cal modificar aspectes que afecten el propi sistema operatiu del mòbil.

Com s’executen adb i fastboot?

Són programes amb interfície en línia de comandes. Per tant, no disposen d’interfície gràfica d’usuari. Per fer-los servir cap usar un intèrpret de comandes, com ara GTerm o Konsole a GNU/Linux, iTerm2 a macOS, o Windows Terminal a Microsoft Windows.

Opcions que s’usen habitualment

Algunes comandes que es fan servir habitualment –d’acord amb la documentació d’un projecte de programari lliure anomenat LineageOS– són:

  • adb push path-del-fitxer-a-l'ordinador path-del-fitxer-al-mòbil que serveix per passar un fitxer de l’ordinador al dispositiu mòbil
  • adb pull path-del-fitxer-al-mòbil path-del-fitxer-a-l'ordinador per fer l’operació inversa, és a dir, passar un fitxer que hi ha al mòbil a l’ordinador
  • adb logcat mostra un registre d’informacions que els diferents programes que s’estan executant dins d’Android, o Android mateix, consideren que poden ser d’utilitat per detectar problemes, si s’escau, o investigar el comportament del telèfon.
  • adb install path-del-fitxer-apk-a-l'ordinador: en cas de disposar d’un fitxer instal·lador d’una aplicació per a Android desat a l’ordinador és possible instal·lar-lo sense haver de copiar-lo primer a la memòria interna del telèfon o a una targeta SD gràcies a aquesta comanda. És habitual que els projectes de programari lliure per a Android distribueixin el seu APK a les seves pàgines web oficials, i aleshores instal·lar-los al dispositiu es fa més fàcil amb adb install. Una aplicació que distribueix el seu APK gratuïtament és, per exemple, el lector lliure de llibres electrònics Librera.

Com s’instal·len adb i fastboot?

L’opció més fàcil, que no necessàriament l’òptima, és a través del gestor de paquets de la distribució que s’estigui executant a GNU/Linux, a través de Homebrew a macOS, i a través de Chocolatey a Microsoft Windows.

Instal·lació a diferents sistemes operatius

  • A Debian Linux els paquets s’anomenen android-tools-adb i android-tools-fastboot i per tant es poden instal·lar tot executant sudo apt install android-tools-adb android-tools-fastboot
  • Per instal·lar-los a macOS amb el gestor homebrew instal·lat n’hi ha prou d’executar ` brew install android-platform-tools`. Homebrew és una eina per a macOS que permet instal·lar programari des de línia de comandes. Instal·lar-lo és molt senzill: sol consistir en executar una sola comanda que es documenta al seu web oficial.
  • A Windows i amb Chocolatey cal executar choco install adb i també choco install universal-adb-drivers (Windows requereix instal·lar els controladors a banda). Chocolatey és un equivalent per a Windows a apt a Debian i brew a macOS. Instal·lar-lo no és tan simple com instal·lar Homebrew a macOS, perquè cal obrir una terminal amb privilegis d’administrador, però no és gaire complicat i és un conjunt de poques passes. Està documentat al web oficial.

Aquesta manera d’instal·lar adb i fastboot és la que fa la vida més fàcil, però n’hi ha de més òptimes en termes d’espai en disc ocupat, en el sentit que n’hi ha que no requereixen disposar d’un gestor d’instal·lació de paquets i no hi ha el risc que juntament amb adb i fastboot s’instal·lin altres programes relacionats que de vegades s’empaqueten junts per simplificar les coses. Google, la principal empresa contribuïdora al desenvolupament d’Android, posa a disposició del públic arxius comprimits que només contenen adb i fastboot, però instal·lar-los, quan s’obtenen d’aquesta forma, és una mica més complicat i habitualment no val la pena.

Configuració a Android per poder usar adb i fastboot

Encara falta una cosa més per poder fer servir aquests programes amb el mòbil: indicar-li al mòbil que l’ordinador des del qual treballem s’hi pot comunicar. Per fer-ho, cal anar a Configuració, allà a Quant a, localitzar el Número de compilació i prémer-lo 10 cops seguits. Després cal tornar a Configuració i allà hi haurà una nova opció de menú anomenada Opcions de desenvolupament o similar. Dins cal activar Depuració USB. Ja es pot connectar el mòbil a l’ordinador a través d’un cable USB a tal efecte i, immediatament, apareix un diàleg al mòbil que demana permís per confiar en l’ordinador.

Quina diferència hi ha entre adb i fastboot?

Mentre que adb només es pot executar quan Android està funcionant, fastboot, com que està pensat per a executar-se quan el telèfon està en el mode de gestor d’arrencada, pot detectar el telèfon en situacions en què Android no funciona, i interactuar-hi. Amb sort, un telèfon que per motiu d’algun error no pot arribar a engegar Android pot rescatar-se gràcies a fastboot.

Així, fastboot no pot treballar amb fitxers que hi hagi al telèfon: no pot copiar-ne del telèfon a l’ordinador, com fa adb pull, ni a la inversa, com passa amb adb pull, sinó que només pot fer coses molt bàsiques i prèvies al sistema operatiu. Un exemple d’això seria substituir el sistema operatiu per un altre: per exemple, reemplaçar l’Android que el fabricant del telèfon mòbil ha instal·lat per defecte per un altre –sempre que sigui compatible amb el terminal en qüestió– és una tasca de la qual s’encarrega fastboot.

Això és una operació habitual quan l’usuari prefereix tenir un sistema operatiu “net”, sense aplicacions per defecte ni de Google –Play, Maps, YouTube,…– ni del fabricant, com podrien ser per exemple Samsung Pay o Xiaomi Mi Fit / Zepp Life. A la versió d’Android neta, sense totes aquestes aplicacions afegies, se la coneix com Android Open Source Project, o AOSP.

La majoria d’usos que requereixen una interacció entre el mòbil i l’ordinador tenen adb com a protagonista, no pas fastboot.

Com es pot comprovar si adb i fastboot estan funcionant?

Per comprovar si l’ordinador està detectant correctament el mòbil, cosa que és una condició prèvia per a fer qualsevol altre cosa amb adb i fastboot, es pot fer servir adb devices i fastboot devices. adb devices mostrarà una sortida que indicarà que l’ordinador ha detectat el mòbil quan passi que Android està carregat, les opcions de desenvolupament estan activades, la depuració USB està marcada com a permesa a la configuració del telèfon i l’ordinador té instal·lats els controladors d’Android. Aquestes són les coses a comprovar, a més que el cable de connexió funcioni correctament, quan adb no retorna el resultat esperat. Si després de comprovar aquestes qüestions l’ordinador continua sense detectar el mòbil, és possible fer servir fastboot devices i a partir del moment de la detecció procurar tornar a instal·lar un sistema operatiu funcional. fastboot devices retornarà una llista amb el dispositiu connectat només en el cas que estigui en mode gestor d’arrencada, o en anglès “fastboot mode”. S’hi pot arribar de dues formes: si Android està carregat però hi volem accedir per algun motiu es pot executar adb reboot bootloader i això posarà el mòbil en mode gestor d’arrencada. I si no és possible carregar Android, aleshores cal prémer una combinació de botons que és específica per a cada dispositiu, però que sol involucrar el botó d’arrencada i els de volum.

És important tenir present que fastboot devices no detectarà el mòbil si Android està carregat; i a la inversa, adb devices no ho farà si el telèfon està en mode gestor d’arrencada. No són comandes intercanviables.

Per a què serveixen adb i fastboot?

fastboot es pot fer servir per coses com ara instal·lar una versió d’Android totalment diferent a aquella que porta el mòbil de fàbrica, i també per fer una operació que s’anomena “desbloquejar el bootloader” que és un requisit que alguns mòbils imposen per permetre a l’usuari tenir privilegis d’administrador (root) i per tant poder desinstal·lar programes que el fabricant del mòbil considera “fonamentals” però que no tothom necessita (per exemple, YouTube).

adb serveix per poder controlar la pantalla del telèfon des de l’ordinador amb el teclat i el ratolí a través d’eines com scrcpy o sincronitzar directoris entre l’ordinador i el mòbil tot gràcies a better adb sync.