настроить устройство для разработки (???????????? нет разрешений)

282

Я использую телефон Samsung Galaxy Nexus ( платформа Android 4.0 ).

Я занимаюсь разработкой приложения для Android на ОС Ubuntu Linux. Я хотел бы запустить свое приложение непосредственно на мобильном телефоне Samsung, поэтому я выполнил следующие шаги установки:

  1. в моем AndroidManifest.xmlфайле проекта , добавлен android:debuggable="true"к <application>элементу

  2. На устройстве в Настройках> Безопасность включена Неизвестные источники

  3. На устройстве в Настройках> Параметры разработчика включена отладка по USB

  4. На моем компьютере создан /etc/udev/rules.d/51-android.rulesфайл со следующим содержимым:

    SUBSYSTEM=="usb", ATTR{idVendor}=="04E8", MODE="0666", GROUP="plugdev" 
  5. На моем компьютере запустите chmod a+r /etc/udev/rules.d/51-android.rulesкоманду

Затем на своем компьютере я открыл терминал и выполнил adb devicesкоманду:

List of devices attached 
????????????    no permissions

Поскольку я не видел свое устройство, а только его ???????????? no permissions, я запускаю следующие команды:

 adb kill-server
 adb start-server
 adb devices

Но я все же получил:

List of devices attached 
????????????    no permissions

Зачем? Чего мне не хватает?

Leem.fin
источник
после запуска adb kill-server вы получили сообщение о том, что * демон не запущен. запускать его сейчас через порт 5037 * * демон успешно запустился * --- если не попробовать, пока вы не получите это сообщение
Андро Сельва
2
Попробуйте проверить, что ваш пользователь находится в plugdevгруппе.
Сергей Глотов
2
Run => sudo adb start-server (используйте root-доступ для запуска adb)
Confused
наконец, я нашел решение, которое сработало для меня в этой ссылке github.com/snowdream/51-android
Абдулрахман Гамаль

Ответы:

451

Что работает для меня, это убить и запустить сервер ADB снова. На Linux: sudo adb kill-serverи тогда sudo adb start-server. Затем он обнаружит практически каждое устройство из коробки.

WarrenFaith
источник
1
Я использую root для выполнения команды «adb devices» в <android-SDK> / platform-tool /, я получил «Нет команды 'adb' found», почему?
Leem.fin
8
убедитесь, что ваш adb получил + x -rwxrwxr-x 1 martin martin 156K 2011-11-09 15:40 adb. Попробуйте перейти в каталог напрямую и начать с «sudo ./adb devices». Если вы можете запустить это без sudo, вы сможете запустить его с sudo ... Я не уверен, что ваша проблема может быть ...
WarrenFaith
8
Вам не нужно запускать adb от имени root, если ваши права доступа udev установлены правильно. См. Ответ на вопрос grebulons ниже или обратитесь к документации по Android: developer.android.com/tools/device.html
gnac
4
Одним из важных предложений является отключение USB-кабеля, поэтому вы перезагружаете ADB, подключаете кабель, и он работает. В моей ситуации, пока я делал процедуру с подключенным кабелем, у меня не работает.
Андроидевиль
6
И команды: adb kill-server sudo adb start-serverпроверить:adb devices
Асим
350

У меня ничего не получалось, пока я наконец не нашел ответ здесь: http://ptspts.blogspot.co.il/2011/10/how-to-fix-adb-no-permissions-error-on.html

Я копирую текст здесь на случай, если он исчезнет в будущем.

Создайте файл с именем /tmp/android.rules со следующим содержимым (шестнадцатеричные номера поставщиков взяты со страницы списка поставщиков):

SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0e79", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0502", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0b05", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="413c", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0489", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="091e", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="12d1", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="24e3", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2116", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0482", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="17ef", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="1004", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="22b8", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0409", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2080", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0955", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="2257", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="10a9", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="1d4d", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0471", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="04da", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="05c6", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="1f53", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="04e8", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="04dd", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0fce", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0930", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="19d2", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="1bbb", MODE="0666"

Запустите следующие команды:

sudo cp /tmp/android.rules /etc/udev/rules.d/51-android.rules
sudo chmod 644   /etc/udev/rules.d/51-android.rules
sudo chown root. /etc/udev/rules.d/51-android.rules
sudo service udev restart
sudo killall adb

Отсоедините USB-кабель между телефоном и компьютером.

Переподключите телефон.

Бегать adb devices чтобы подтвердить, что теперь у него есть разрешение на доступ к телефону.

Пожалуйста , обратите внимание , что это можно использовать , USER="$LOGINNAME"вместо , MODE="0666"в .rulesфайле, подставляя $LOGINNAMEдля имени пользователя, то есть то , чтоid -nu печатает.

В некоторых случаях может потребоваться дать файлу правил udev имя, близкое к концу, например z51-android.rules.

grebulon
источник
7
Примечание: для Ubuntu Precise имя файла 70-android.rulesсоответствует этому сообщению: esausilva.com/2010/05/13/… . Также спасибо за сообщение о том, что вам нужно перезапустить udevи убить все процессы ADB. Работал как шарм!
Эдуард Лука
Подобный подход официально задокументирован на developer.android.com/tools/device.html
bjunix
4
Это сработало хорошо, но, как заметил @luciana в другом ответе, вам может потребоваться вызов, sudo udevadm control --reload-rulesчтобы обновить правила udev, если перезапуска сервера недостаточно.
Serjlee
4
Это должно быть помечено как правильный ответ, так как sudo-ing adb не должен быть требованием для Linux
Zac
1
Это единственный правильный ответ здесь. Спасибо за это! Кроме того, мы можем увидеть вывод lsusb, чтобы убедиться, что требуемый поставщик включен. Самое странное, что только одно из моих устройств (OnePlus One) внезапно перестало работать после обновления до Android 7.1.2 (даже при запуске adb от имени root), после добавления правил udev, как описано выше, оно снова работает.
user1209216
77

Введите следующие команды:

adb kill-server sudo ./adb start-server adb devices

Проблема в том, что вы не используете сервер ADB от имени пользователя root.

iancrowther
источник
4
хотя идея та же, что и в принятом ответе, этот мне помог только благодаря предоставленному примеру. Спасибо
user907860
1
@ user907860 на самом деле это лучше, чем принятый ответ, потому что он объясняет, почему вы должны написать sudo :) (чего я не делал, когда увидел принятый ответ)
stan0
Кстати, есть идеи, почему ADB должен работать от имени пользователя root?
stan0
извините, нет, я не помню
iancrowther
2
ADB не должен быть запущен от имени пользователя root. Если это требуется, ваша система неправильно настроена. Прекратите бросать "sudo" перед всем, это имеет огромное значение для безопасности.
хакель
55

Перепробовал все выше, ни один не работал .. наконец-то сработало, когда я переключаюсь как с MTP на Camera (PTP).

Сабир Мухаммед
источник
3
Для тех, кто интересуется, как это сделать ... Настройки системы> Память> Верхняя правая кнопка: подключение к компьютеру через USB> Подключить как выбрать камеру (PTP) вместо медиаустройства (MTP)
Thaddeus Albers
3
человек, я искал решение как два часа, это работает для меня на Ubuntu 16.04, спасибо
Jorius
это должно быть первым делом, чтобы проверить. У меня работает
m50
32

На этот вопрос выложено много плохих ответов, от настойчивых требований ( adbкак rootне единственное или даже рекомендуемое решение) до решения совершенно не связанных между собой проблем.

Вот самый короткий и универсальный рецепт для заботы о разрешениях для всех adbи fastbootустройств одновременно:

echo 'ACTION=="add", SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:ff420?:*", MODE="0666"' | sudo tee /etc/udev/rules.d/99-android.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --verbose --action=add --subsystem-match=usb

Или вы можете использовать немного более длинную версию, которую я разместил в этой сути .

Что касается конкретной вещи, которую OP сделал неправильно в своем вопросе - это не перезагрузка udevправил после редактирования .rulesфайла.

Также ОП не сообщил, какая сборка Android (он же ROM) у него на телефоне. idVendorЗначение устанавливается в программном обеспечении и , следовательно, зависит от ROM. Таким образом, значение, которое 04E8он использовал в своем первоначальном правиле, работало бы только для устройств со стандартными ПЗУ Samsung. Но это не проблема для этого udevправила - оно соответствует всем устройствам adbили fastbootинтерфейсам независимо от их VendorID .

Алекс П.
источник
Единственный пропущенный шаг, чтобы увидеть, как это работает, - adb kill-server перед устройствами adb.
mstrange
1
Похоже, это больше не работает на Android 8.1. Как вы узнали, что adb сообщает как идентификатор устройства?
Cachapa
Работал для меня на Android 7.1.2
Amerzilla
@Cachapa, он работает со всеми версиями Android. Даже самый последний (на момент написания этой статьи) Android P Preview 4 использует те же идентификаторы интерфейса adb - android.googlesource.com/platform/system/core/+/…
Alex P.
все еще работает с Android 11 android.googlesource.com/platform/system/core/+/…
Алекс П.
16

В Archlinux это может происходить иногда. Исправление:

$ sudo -s
# adb kill-server
# adb start-server
Кинан Вербрюгге
источник
Я не уверен, что это было единственной вещью, которая заставляет это работать ... Я попробовал вышеупомянутые вещи. Но без этой записи Ubuntu на VBox мой LG G3 не был авторизован. Спасибо Кинан
последний парень
Я не знаю почему, но sudo adb kill-server; sudo adb start-serverне сработало, но этот сработал.
Hritik
9

Для тех, кто использует debian, руководство по настройке устройства под Ubuntu для создания файла "/etc/udev/rules.d/51-android.rules" не работает. Я следовал инструкциям отсюда . Выкладывать то же самое здесь для справки.

Изменить этот файл как суперпользователь

sudo nano /lib/udev/rules.d/91-permissions.rules

Найти текст, похожий на этот

# usbfs-like devices 
SUBSYSTEM==”usb”, ENV{DEVTYPE}==”usb_device”, \ MODE=”0664

Затем измените режим на 0666, как показано ниже

# usbfs-like devices 
SUBSYSTEM==”usb”, ENV{DEVTYPE}==”usb_device”, \ MODE=”0666

Это позволяет adb работать, однако нам все еще нужно настроить устройство, чтобы его можно было распознать. Нам нужно создать этот файл как суперпользователь,

sudo nano /lib/udev/rules.d/99-android.rules

и введите

SUBSYSTEM==”usb”, ENV{DEVTYPE}==”usb_device”, ATTRS{idVendor}==”0bb4″, MODE=”0666

вышеприведенная строка для HTC, следуйте сообщению @ grebulon для получения полного списка.

Сохраните файл, а затем перезапустите udev с правами суперпользователя.

sudo /etc/init.d/udev restart

Подключите телефон через USB, и он должен быть обнаружен при компиляции и запуске проекта.

Jaga
источник
5

У меня была такая же проблема, решение как у товарища: (кстати, вам не нужно рутировать ваше устройство.)

  1. Введите "su", чтобы переключиться на супер пользователя.
  2. your-path / adb kill-server.
  3. стартовый сервер your-path / adb.
  4. Если ошибки не возникает, вы можете увидеть список устройств с «your-path / adb devices» в корневой учетной записи.
  5. Выйти из супер пользователя.
  6. Теперь вы можете выполнять «устройства adb» в своей учетной записи.

Наслаждаться.

Джеффри Янг
источник
1
Если вам не удается войти в систему с помощью su, используйте sudo su. Я сделал. А также, если вы не знаете, как выйти из системы - используйте exit.
Pijusn
4

Я знаю, что это может быть немного поздно, но вот очень хорошая статья о том, как вручную добавить Android ADB USB Driver. Добавление USB-драйвера Android ADB вручную в Ubuntu 14.04 LTS

Отредактировано для добавления содержимого ссылки

меры

Примечание. Убедитесь, что устройство Android подключено в режиме отладки по USB.

Откройте терминал ( CTRL + ALT + T) и введите команду: lsusb

Теперь вы можете получить аналогичный ответ на это:
Bus 002 Device 013: ID 283b:1024

Примечание: со ссылкой на этоBus 002 Device 008: ID 283b:1024
{idVendor}==”283b” {idProduct}==”1024″

Теперь введите следующую команду: sudo gedit /etc/udev/rules.d/51-android.rules
Это создаст файл правил Android ( 51-android.rules) или откройте существующий в указанном месте ( /etc/udev/rules.d)

Добавьте новую строку в этот файл:
SUBSYSTEM==”usb”, ATTRS{idVendor}==”283b”, ATTRS{idProduct}==”1024″, MODE=”0666″

Примечание Редактировать idVendorи idProductзначения со значениями вашего устройства. Сохранить и закрыть.

Теперь введите следующую команду:
sudo chmod a+rx /etc/udev/rules.d/51-android.rules- предоставить разрешение на чтение / выполнение
sudo service udev restart- перезапустите udevслужбу

Теперь мы должны добавить idVendorк adb_usb.ini. Введите следующие команды:
cd ~/.android
gedit adb_usb.ini

Добавьте следующее значение 0x283b

Это не что иное, как 0x ( idVendorзначение). Поэтому замените значение на. уважение к значению вашего устройства Сохраните и закройте файл.

Теперь введите следующую команду:
sudo service udev restart

Отключите устройство Android и снова подключите его.
Теперь введите следующую команду:
adb kill-server
adb devices

Вот и вы! Ваше устройство должно быть в списке.

Скопировано вручную Добавление драйвера Android ADB USB в Ubuntu 14.04 LTS

Работал на меня.

DC-aoxn
источник
4

У меня была такая же проблема с моей Galaxy S3. Моя проблема заключалась в том, что idVendorзначение 04E8не было правильным. Чтобы найти подходящий, подключите свой смартфон к компьютеру и запустите lsusbв терминале. Он отобразит ваш смартфон следующим образом:

Bus 002 Device 010: ID 18d1:d002 Google Inc.

Таким образом, правильное idVendorзначение 18d1. И строка в /etc/udev/rules.d/51-android.rulesдолжна быть:

SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev" 

Потом бегаю sudo udevadm control --reload-rulesи все работает!

Улли
источник
1
Возможно , вы имели в виду , может быть:ATTR{idVendor}=="18d1"
Tanasis
3

Используйте M0Rf30/android-udev-rulesсообщество GitHub, поддерживаемое udev-rules

https://github.com/M0Rf30/android-udev-rules/blob/master/51-android.rules

Это самый полный список правил udev, который я когда-либо видел, даже больше, чем рекомендуемый в настоящее время sudo apt-get install android-tools-adb в официальной документации , и он решил эту проблему для меня.

Сиро Сантилли 郝海东 冠状 病 六四 事件 法轮功
источник
1
зачем беспокоиться о «ведении списка», когда одно правило работает для всех? stackoverflow.com/a/45006231/1778421
Алекс П.
@AlexP. спасибо, я не знал об этом методе. Любая идея, почему официальное руководство не рекомендует это вместо этого?
Сиро Сантилли 郝海东 冠状 病 六四 事件 法轮功
Из-за лени и инерции знаний в основном. Первоначальные разработчики Android использовали устройства с одинаковым идентификатором поставщика, поэтому они выбрали самый простой подход, какой только могли себе представить. Когда больше поставщиков создавало больше устройств - разработчики просто добавляли новые идентификаторы в файл правил.
Алекс П.
2
  1. Следуйте инструкциям на http://developer.android.com/guide/developing/device.html (архивная ссылка)
  2. Заменить поставщик идентификатор 0bb4с 18d1в/etc/udev/rules.d/51-android.rules

    Или добавьте еще одну строку, которая гласит:

    SUBSYSTEM=="usb", SYSFS{idVendor}=="18d1", MODE="0666"
  3. Перезагрузите компьютер или просто перезапустите службу udev.
Krishnendu
источник
1

Когда вы перезапустите udev, убейте сервер adb и запустите путь установки adb server goto android sdk и сделайте все на sudo. затем запустите устройства adb, это решит проблему с правами доступа.

Чинтхака Сенанаяка
источник
1

Мое устройство POSITIVO и моя операционная система Ubuntu 14.04 LTS Итак, моя проблема была в имени переменной

Я создаю файл /etc/udev/rules.d/51-android.rules и ставлю SUBSYSTEM=="usb", SYSFS{idVendor}=="1662", MODE="0666"

Я отключил устройство и выполнил:

$ sudo udevadm control --reload-rules
$ sudo service udev restart

после этого я снова подключил устройство Android в режиме разработчика и

$ adb devices

List of devices attached 
1A883XB1K   device
Luciana
источник
1

Без отключения

Все предоставленные ответы предполагают, что вы можете отключить и снова подключить USB-кабель. В ситуациях, когда это невозможно (например, когда вы находитесь на расстоянии), вы можете сделать следующее, чтобы сделать то, что предложенные правила udev будут делать при повторном подключении:

lsusb

Найдите устройство, которое вам небезразлично, например:

Bus 003 Device 005: ID 18d1:4ee4 Google Inc. Nexus

Запишите номер шины, на которой он включен, а затем выполните, например, для шины 003:

sudo chmod a+w /dev/bus/usb/003/*

Очевидно, что это может быть более допустимым, чем вы хотите (может быть подключено больше устройств, чем только это), но вы поняли идею.

Кристиан Фриц
источник
Чтобы применить новое udevправило без повторного подключения устройства, просто используйте udevadm trigger --verbose --action=add --subsystem-match=usbкоманду.
Алекс П.
1

Вы не должны запускать adbсервер как root, как предлагают другие ответы. Вместо этого, если вы используете Arch Linux, сделайте следующее:

  1. Установите android-udevпакет с Pacman
  2. Перезагрузить правила Udev:

    # udevadm control --reload-rules
  3. Добавьте себя в adbusersгруппу, а затем выйдите и войдите:

    # usermod -aG adbusers $LOGNAME

Источник: https://wiki.archlinux.org/index.php/android#Configuring_adb

Бабкен Варданян
источник
0

Попробуйте вместо GROUP="plugdev"использования основной группы вашего пользователя.

Юрий
источник
Я использую свое имя пользователя, это не помогает
Leem.fin
0

В моем случае на Ubuntu 12.04 LTS мне пришлось сменить свой режим HTC Incredible usb с зарядки на Media, и затем устройство появилось под adb. Конечно, отладка уже была включена в обоих случаях.

Алан
источник
0

Пожалуйста, НЕ следуйте решениям, предлагающим использоватьsudo ( sudo adb start-server)! Это запустить ADB как root (администратор), и он не должен работать так !!! Это плохой обходной путь !

Все, что работает с правами root, может делать что-либо в вашей системе, если он создает или изменяет файл, может изменить свое разрешение на использование только пользователем root. Опять не надо!

Что нужно сделать это настроить вашу систему , чтобы пользователь имеет разрешения, проверить это руководство я написал о том , как сделать это правильно.

Даниэле Сегато
источник
0

У меня была та же проблема, и я выполнил следующие действия:

# Clone this repository
git clone https://github.com/M0Rf30/android-udev-rules.git
cd android-udev-rules
# Copy rules file
sudo cp -v 51-android.rules /etc/udev/rules.d/51-android.rules
# OR create a sym-link to the rules file - choose this option if you'd like to update your udev rules using git.
sudo ln -sf "$PWD"/51-android.rules /etc/udev/rules.d/51-android.rules
# Change file permissions
sudo chmod a+r /etc/udev/rules.d/51-android.rules
# If adbusers group already exists remove old adbusers group
groupdel adbusers
# add the adbusers group if it's doesn't already exist
sudo mkdir -p /usr/lib/sysusers.d/ && sudo cp android-udev.conf /usr/lib/sysusers.d/
sudo systemd-sysusers # (1)
# OR on Fedora:
groupadd adbusers
# Add your user to the adbusers group
sudo usermod -a -G adbusers $(whoami)
# Restart UDEV
sudo udevadm control --reload-rules
sudo service udev restart
# OR on Fedora:
sudo systemctl restart systemd-udevd.service
# Restart the ADB server
adb kill-server
# Replug your Android device and verify that USB debugging is enabled in developer options
adb devices
# You should now see your device

Вышеуказанные шаги описаны в android-udev-rules . Это сработало для меня.

Просто убедитесь, что подтвердили диалоговое окно, которое появится на экране вашего телефона после его подключения.

leosbrf
источник
0
sudo usermod -aG plugdev $LOGNAME

У меня эта команда сработала

Fayaz
источник
-1

Я использовал su, и он начал работать. Когда я использую Jetbrains с обычным пользователем, я вижу эту проблему, но после перезапуска Jetbrains в режиме su, я вижу свое устройство, ничего не делая.

Я использую Ubuntu 13.04 и Jetbrains 12.1.4

Дипти Кохли
источник
-1

Вы также можете попробовать отредактировать файл adb_usb.ini , расположенный по адресу /home/username/.android/ . Этот файл содержит список поставщиков устройств, к которым вы хотите подключиться. Вы просто добавляете идентификатор вашего устройства в новую строку (это один идентификатор на строку). Затем перезапустите сервер ADB и подключите ваше устройство заново.

У меня это работало на Ubuntu 12.10.

10101101
источник
-1

Во всяком случае, что я сделал, чтобы решить эту проблему (на Ubuntu ).

  1. Определено, в каких случаях мне нужно запускать эти команды. Для большинства пользователей Ubuntu есть домашняя папка (скрытый файл .bashrc).

    В котором вы можете записать запуск этих команд. Но эти команды будут запущены при вводе bashкоманды в консоли.

  2. Так как у меня есть оболочка .zshrc, я сделал следующее:

    открыть консоль: gedit .zshrc

Когда файл откроется, добавьте следующую строку:

./.add_device_permissions.sh

После или до этого нам нужно создать этот файл: .add_device_permissions.shв котором мы напишем следующее:

#!/bin/bash
# Add permissions
ADB="/home/vadimm/Android/Sdk/platform-tools/adb"
$ADB devices
$ADB kill-server
cat .permissions_redmi_note | sudo -S $ADB devices
$ADB kill-server
cat .permissions_redmi_note | sudo -S $ADB devices

Также нам нужно создать .permissions_redmi_note, где нам нужно жестко закодировать наш пароль.

  1. Чтобы не добавлять в файл .zshrcненужные, мы можем указать путь при запуске самой системы:Startup Applications Preferences

Где мы нажимаем на «Добавить» и пишем нашу команду: /home/vadimm/.add_device_permissions.sh

  1. Также вы можете попробовать использовать в командной строке следующие команды: ./adb devices ./adb kill-server sudo ./adb devices ./adb kill-server ./adb devices
Морозов
источник
-2

Если кто-то сталкивается со следующим сообщением об ошибке при использовании adb devices

no permissions (verify udev rules); see [http://developer.android.com/tools/device.html]

Выполните следующее

sudo -s 
adb kill-server
adb start-server

Это исправило проблему для меня на пользовательском устройстве Android сборки

Исмаил Икбал
источник