
A seguir uma receita de bolo de como não sofre com o acesso ao celular android na plataforma Linux.
No exemplo a seguir, ao executarmos o comando ADB DEVICES, obtemos o seguinte erro:
$ adb devices * daemon not running. starting it now on port 5037 * * daemon started successfully * List of devices attached ???????????? no permissions
Para contorná-lo, primeiramente precisamos do ID do fabricante e do equipamento. Este conseguimos com o comando LSUSB com direitos de root.
#lsusb Bus 002 Device 018: ID 2357:0601 Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 004: ID 04f3:0903 Elan Microelectronics Corp. Bus 001 Device 003: ID 8087:0a2b Intel Corp. Bus 001 Device 002: ID 13d3:5694 IMC Networks Bus 001 Device 027: ID 22b8:2e81 Motorola PCS Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
No meu caso é o Motorola, cujo ID do fabricante é 22b8, e ID do equipamento 2281. Agora com estas informações em mão, adicione o seguinte conteúdo no arquivo /etc/udev/rules.d/51-android.rule
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTR{idProduct}=="2e81", MODE="0666", GROUP="plugdev", SYMLINK+="android%n"
Agora execute os comando abaixo para carregar as novas regras de dispositivos.
# adb kill-server # /usr/bin/udevadm control --reload-rules # /usr/bin/udevadm trigger
Pronto! Mas se ocorrer também o erro a seguir, apague o conteúdo da pasta ~/.android
$ adb devices * daemon not running. starting it now on port 5037 * * daemon started successfully * List of devices attached 0029758131 unauthorized