Пожалуйста, сначала прочтите следующее: Как мне настроить Android ADB?
Настройка доступа по USB
Во-первых, вам не нужны права суперпользователя для запуска ADB, если вы установили соответствующие разрешения. На сайте AOSP приведены примеры для Настройка доступа по USB для устройств Pixel / Nexus. Вы можете использовать следующую схему для устройств, отличных от Nexus:
SUBSYSTEM=="usb", ATTR{idVendor}=="xxxx", ATTR{idProduct}=="xxxx", MODE="0600", OWNER="<username>"
Идентификатор поставщика и продукта можно получить с помощью lsusb
и поиск вашего устройства. (Примечание: На самом деле устройство представляет собой Galaxy Nexus.)
$ lsusb | grep -i samsungBus 002 Device 103: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II]
Так что мой /etc/udev/rules.d/51-android.rules
правило udev выглядит следующим образом:
# adb protocol on maguro/toro (Galaxy Nexus)SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", MODE="0600", OWNER="username"
Возможно, вы захотите повторить это для других состояний телефона, таких как fastboot, если это необходимо. Чтобы изменения вступили в силу, либо перезагрузите udev (sudo udevadm control --reload
) или перезагрузка (рекомендуется).
Обеспечение доступности программ
Вместо изменение переменной path Я бы предложил добавить символическую ссылку на исполняемый файл либо в ~/bin/
(только для пользователя) или в /usr/local/bin/
(общесистемный).
mkdir ~/bin/ln -s /opt/android-sdk-linux/platform-tools/adb ~/bin/