ADB не видит устройство: почему attached, но no devices connected

Команда adb devices возвращает пустой список или строку no devices/emulators found, хотя смартфон физически подключён к компьютеру, — это классический симптом разрыва на одном из трёх уровней: USB-подключение, драйвер на ПК или авторизация отладки на самом телефоне. Прежде чем переустанавливать что-либо, стоит локализовать, на каком именно уровне теряется связь.

Проблема встречается на Windows, macOS и Linux, причём на Windows чаще всего виноваты драйверы, на Linux — права доступа (правила udev), а на macOS — конфликтующие процессы. Ниже разберём диагностику по шагам: от самых простых проверок к более глубоким.

Шаг 1: Проверка кабеля и USB-порта

Самая частая и самая обидная причина — кабель, который умеет только заряжать. Многие дешёвые USB-кабели не содержат линий передачи данных, поэтому телефон заряжается, но компьютер его просто не видит. Замените кабель на заведомо «дата-кабель», например тот, которым телефон успешно подключался к ПК как накопитель.

Далее проверьте порт. Подключайте устройство напрямую к USB-порту материнской платы (на задней панели ПК), минуя хабы, разветвители и переднюю панель корпуса. Если есть возможность, попробуйте порт USB 2.0 вместо USB 3.x — с некоторыми связками контроллеров и драйверов это помогает.

  • 🔌 Замените кабель на заведомо рабочий с поддержкой передачи данных
  • 🖥️ Подключитесь напрямую к порту ПК, без USB-хабов
  • 🔄 Попробуйте другой USB-порт, в том числе USB 2.0
  • 📱 Проверьте, определяется ли телефон как MTP-накопитель — если нет, проблема точно на уровне кабеля или порта

Шаг 2: Включение отладки по USB на устройстве

Без активированной отладки по USB (USB debugging) ADB не увидит устройство в принципе. Сначала нужно разблокировать режим разработчика: откройте Настройки → О телефоне и несколько раз нажмите на пункт «Номер сборки» до появления сообщения о включении режима разработчика. Точное название пункта может отличаться в зависимости от оболочки — MIUI, One UI, ColorOS имеют свои вариации.

Затем перейдите в появившийся раздел Для разработчиков (обычно внутри «Система» или «Расширенные настройки») и включите переключатель «Отладка по USB». После этого переподключите кабель.

⚠️ Внимание: на некоторых устройствах переключатель отладки по USB автоматически отключается после отзыва авторизаций, сброса настроек или обновления системы. Если ADB раньше работал, а теперь нет — первым делом проверьте, не сбросился ли этот переключатель.

Шаг 3: Авторизация RSA-ключа на смартфоне

Даже при включённой отладке устройство может отображаться в списке как unauthorized или не отображаться вовсе, если вы не подтвердили запрос на доверие к компьютеру. При первом подключении на экране телефона должно появиться диалоговое окно «Разрешить отладку по USB?» с отпечатком ключа — отметьте «Всегда разрешать с этого компьютера» и нажмите «ОК».

Если окно не появляется, выполните в терминале последовательно:

adb kill-server

adb start-server

adb devices

Перезапуск сервера заново инициирует рукопожатие, и запрос авторизации обычно появляется повторно. Если диалог так и не показывается, в разделе «Для разработчиков» найдите пункт «Отозвать авторизацию отладки по USB», нажмите его и переподключите устройство.

📊 На каком этапе ADB перестал видеть ваше устройство?
Устройство вообще не определяется ПК
Видно в системе, но adb devices пуст
Статус unauthorized
Работало раньше, пропало после обновления

Шаг 4: Драйверы ADB на Windows

На Windows отсутствие корректного драйвера — причина номер один, когда телефон виден в системе, но adb devices возвращает пустой список. Откройте Диспетчер устройств и посмотрите, как определяется подключённый смартфон:

  • ⚠️ Устройство с жёлтым восклицательным знаком — драйвер отсутствует или повреждён
  • 📁 Устройство в разделе «Переносные устройства» — установлен MTP-драйвер, но нет ADB-интерфейса
  • ✅ Пункт «Android Device» → «Android Composite ADB Interface» — драйвер установлен правильно

Для установки драйвера скачайте Google USB Driver через SDK Manager в Android Studio или используйте драйвер от производителя смартфона. Затем в Диспетчере устройств: правый клик по устройству → Обновить драйвер → Найти на этом компьютере → Выбрать из списка и укажите распакованную папку с драйвером.

☑️ Чек-лист установки драйвера ADB

Выполнено: 0 / 5

Шаг 5: Особенности Linux и macOS

На Linux ADB часто не видит устройство из-за отсутствия прав доступа к USB. Симптом: adb devices показывает no permissions. Решение — добавить правила udev для вашего устройства или запустить сервер с повышенными правами для проверки:

sudo adb kill-server

sudo adb start-server

adb devices

Если с sudo устройство видно, значит проблема именно в правах, и нужно настроить правила udev — конкретный файл и его содержимое зависят от дистрибутива, поэтому сверяйтесь с документацией вашей системы. На macOS драйверы не требуются, но помогает перезапуск сервера и проверка того, что ADB установлен корректно (например, через Homebrew или официальные platform-tools).

⚠️ Внимание: постоянная работа ADB через sudo — плохая практика. Используйте её только для диагностики, а затем настройте корректные права доступа, чтобы сервер работал от обычного пользователя.

Шаг 6: Конфликты версий и процессов ADB

Если на компьютере установлено несколько копий ADB — например, из Android Studio, отдельные platform-tools и какая-нибудь утилита прошивки — они могут конфликтовать. Разные версии сервера несовместимы: при запуске второй копии первая «отваливается», и устройство пропадает из списка.

Проверьте, какая версия и откуда запускается:

adb version

where adb

На Windows команда where adb покажет все найденные копии в PATH (на Linux/macOS — which -a adb). Оставьте одну актуальную версию platform-tools и уберите остальные из переменной PATH. Также завершите фоновые процессы программ для прошивки и синхронизации, которые могут занимать ADB-интерфейс.

Сводная таблица диагностики

СимптомВероятная причинаЧто делать
ПК вообще не видит телефонКабель без линий данных, неисправный портЗаменить кабель, подключиться напрямую к порту ПК
adb devices — пустой списокОтключена отладка по USB или нет драйвераВключить отладку, установить ADB-драйвер
Статус unauthorizedНе подтверждён RSA-ключ на телефонеРазрешить отладку в диалоге на экране устройства
Статус no permissions (Linux)Нет прав доступа к USBНастроить правила udev, проверить через sudo
Устройство периодически пропадаетКонфликт версий ADB или нестабильный портОставить одну версию platform-tools, сменить порт
Что делать, если ничего не помогло

Проверьте устройство на другом компьютере — если и там не определяется, проблема на стороне смартфона (разъём, настройки, прошивка). Попробуйте перезагрузить телефон, очистить данные приложения «Настройки» не нужно, но можно сбросить настройки USB в разделе разработчика, если такой пункт есть в вашей оболочке. Как крайняя мера — проверка через ADB over Wi-Fi, если устройство и ПК в одной сети и функция поддерживается вашей версией Android.

Часто задаваемые вопросы

Почему adb devices показывает устройство как unauthorized?

Это означает, что на смартфоне не подтверждён запрос «Разрешить отладку по USB?». Разблокируйте экран телефона, выполните adb kill-server и adb devices заново — диалог должен появиться повторно. Отметьте «Всегда разрешать» и подтвердите.

Телефон заряжается, но компьютер его не видит. Это проблема ADB?

Нет, в этом случае проблема на физическом уровне: кабель без линий передачи данных, неисправный порт или разъём. ADB здесь ни при чём — сначала добейтесь, чтобы телефон определялся системой как устройство (например, MTP-накопитель).

Нужно ли устанавливать Android Studio целиком ради ADB?

Не обязательно. Google распространяет platform-tools отдельным пакетом, который содержит adb и fastboot. Для большинства задач этого достаточно; Android Studio нужна только для полноценной разработки.

ADB видел устройство, а после обновления телефона перестал. Почему?

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

Можно ли использовать ADB без кабеля?

Да, если устройство и ПК находятся в одной сети и устройство поддерживает отладку по Wi-Fi. В современных версиях Android есть соответствующий пункт в разделе «Для разработчиков». Однако для первичной настройки может потребоваться подключение по кабелю — это зависит от версии системы.