Команда adb devices — первое, что нужно выполнить перед любой операцией через Android Debug Bridge: если в выводе терминала нет серийного номера смартфона со статусом device, ни прошивка, ни установка APK, ни снятие логов работать не будут. Пустой список после ввода команды означает, что компьютер не видит устройство в режиме отладки, и дальнейшие действия бессмысленны до устранения причины.
В этой статье разберём, что именно делает adb devices, как подготовить смартфон и компьютер, что означают статусы device, unauthorized и offline, и как исправить типичные проблемы с определением устройства на Windows, macOS и Linux.
Что делает команда adb devices
Команда adb devices выводит список всех Android-устройств, которые в данный момент подключены к компьютеру и доступны для отладки. В ответ терминал показывает одну или несколько строк вида: серийный номер устройства и его текущий статус. Это базовая диагностическая проверка всей цепочки «кабель — драйвер — ADB-сервер — смартфон».
Команда входит в состав пакета Android SDK Platform-Tools, который Google распространяет бесплатно. Для запуска достаточно распаковать архив, открыть терминал в папке с файлами adb и ввести команду. Никакой установки в привычном смысле не требуется — утилита работает как портативная.
adb devices
Типичный корректный вывод выглядит так:
List of devices attached
ABCD1234567890 device
Если вместо серийника и статуса отображается только строка List of devices attached без записей — устройство не обнаружено, и нужно переходить к диагностике.
Подготовка: включение отладки по USB
Без активированной отладки по USB смартфон не ответит на запросы ADB, даже если кабель и драйверы исправны. Функция скрыта в меню разработчика, которое по умолчанию не отображается в настройках Android.
Порядок действий на большинстве устройств выглядит так. Откройте Настройки → О телефоне и несколько раз подряд нажмите на пункт Номер сборки, пока система не сообщит, что вы стали разработчиком. Затем вернитесь в настройки, найдите раздел Для разработчиков (иногда он находится внутри Система или Расширенные настройки) и включите переключатель Отладка по USB.
- 🔌 Используйте кабель, поддерживающий передачу данных — «зарядочные» кабели без линий данных не подойдут.
- 🔓 Разблокируйте экран смартфона перед подключением — на заблокированном устройстве диалог разрешения может не появиться.
- 🖥️ Подключайтесь напрямую к порту компьютера, а не через хаб или разветвитель.
- 📱 При появлении запроса «Разрешить отладку по USB?» нажмите «Разрешить» и при желании отметьте «Всегда разрешать с этого компьютера».
⚠️ Внимание: точные названия пунктов меню и их расположение различаются у разных производителей и версий оболочки (MIUI, One UI, ColorOS и др.). Если указанный путь не совпадает с вашим, сверьтесь с документацией конкретной модели или воспользуйтесь поиском по настройкам.
☑️ Проверка перед запуском adb devices
Запуск команды на Windows, macOS и Linux
На Windows откройте папку с Platform-Tools, зажмите Shift, кликните правой кнопкой по пустому месту и выберите Открыть окно PowerShell здесь или Открыть в Терминале. Затем введите команду:
adb devices
В некоторых версиях PowerShell требуется указывать путь явно:
.\adb devices
На macOS и Linux команда запускается через стандартный терминал из каталога Platform-Tools, при необходимости с префиксом ./adb devices. Если утилита добавлена в переменную окружения PATH, работать с ней можно из любой папки без указания пути.
Для Windows может потребоваться установка USB-драйвера производителя смартфона — без него система иногда определяет устройство как неизвестное. На macOS и Linux отдельные драйверы обычно не нужны, но в Linux может понадобиться настройка правил udev для доступа к устройству без прав root.
Расшифровка статусов устройства
Результат команды — это не только «видит / не видит». Второе слово в строке вывода сообщает о состоянии подключения, и по нему можно сразу понять, где искать проблему.
| Статус | Значение | Что делать |
|---|---|---|
device | Устройство подключено и готово к работе | Можно выполнять любые ADB-команды |
unauthorized | Отладка не разрешена на смартфоне | Подтвердить запрос на экране устройства |
offline | Связь установлена, но устройство не отвечает | Перезапустить ADB-сервер, переподключить кабель |
no permissions | Нет прав доступа (типично для Linux) | Настроить правила udev или запустить с нужными правами |
Наиболее частая ситуация у новичков — статус unauthorized. Он означает, что кабель и драйверы в порядке, но на экране смартфона не подтверждён запрос на разрешение отладки. Разблокируйте устройство, отключите и снова подключите кабель, дождитесь диалога и нажмите «Разрешить».
Устройство не определяется: пошаговая диагностика
Пустой список после adb devices — самая распространённая жалоба. Проверку стоит вести от простого к сложному, исключая каждое звено цепочки по очереди.
Сначала замените кабель и порт USB. Значительная часть проблем связана именно с кабелем: многие комплектные и дешёвые провода передают только питание. Признак такого кабеля — смартфон заряжается, но в настройках подключения нет вариантов передачи файлов.
Далее проверьте, видит ли устройство сама операционная система. На Windows откройте Диспетчер устройств: смартфон в режиме отладки должен отображаться как устройство ADB Interface или аналогичное. Восклицательный знак рядом с записью указывает на проблему с драйвером — установите драйвер с официального сайта производителя или универсальный Google USB Driver из состава SDK.
- 🔄 Перезапустите ADB-сервер командами
adb kill-serverиadb start-server, затем снова выполнитеadb devices. - 🔁 Перезагрузите смартфон — это сбрасывает зависшие состояния отладочного демона.
- 🧩 Попробуйте другой компьютер: если там устройство определяется, проблема в настройках или драйверах первой машины.
- 🛡️ Временно отключите антивирус или защитное ПО, которое может блокировать работу ADB-сервера.
⚠️ Внимание: не устанавливайте «драйвер-паки» и сборники ADB со сторонних сайтов — используйте только официальные Platform-Tools от Google и драйверы производителя устройства. Модифицированные версии утилиты могут содержать вредоносный код.
Почему устройство видно как unauthorized даже после разрешения
Возможная причина — сбой пары ключей RSA, которыми обмениваются компьютер и смартфон при первом подключении. Удалите файлы adbkey и adbkey.pub из папки .android в домашнем каталоге пользователя, отзовите разрешения на отладку в настройках разработчика и подключите устройство заново — ключи будут сгенерированы повторно.
Статус offline и нестабильное подключение
Статус offline появляется, когда ADB-сервер видит устройство, но не может установить с ним рабочий сеанс. Частые причины — устаревшая версия Platform-Tools, конфликт нескольких запущенных копий adb или нестабильный контакт в разъёме.
Первое действие — обновить Platform-Tools до актуальной версии, скачав свежий архив с официального сайта разработчиков Android. Старые версии утилиты могут конфликтовать с новыми версиями Android на смартфоне. Затем выполните перезапуск сервера:
adb kill-server
adb start-server
adb devices
Если статус offline возникает периодически во время работы, проверьте разъём смартфона на загрязнение и люфт кабеля, а также отключите на устройстве энергосберегающие режимы, которые могут разрывать фоновые соединения. На некоторых оболочках агрессивная оптимизация батареи завершает процессы отладки — в таком случае добавьте соответствующие исключения, если система это позволяет.
Работа с несколькими устройствами
Когда к компьютеру подключено больше одного Android-устройства, adb devices покажет несколько строк. В этом случае обычные команды вроде adb install завершатся ошибкой, потому что ADB не знает, к какому устройству их применить.
Укажите целевое устройство явно через параметр -s и серийный номер из вывода:
adb -s ABCD1234567890 install app.apk
Для устройств, подключённых по Wi-Fi через adb connect, вместо серийного номера используется адрес вида 192.168.1.50:5555. Список подключённых по сети устройств также отображается в выводе adb devices наравне с USB-подключениями.
Часто задаваемые вопросы
Что означает пустой список после adb devices?
Компьютер не обнаружил ни одного устройства в режиме отладки. Проверьте, включена ли отладка по USB на смартфоне, поддерживает ли кабель передачу данных, установлен ли драйвер (на Windows) и не заблокирован ли экран устройства.
Нужен ли root для работы adb devices?
Нет. Команда и базовые функции ADB работают на любых устройствах без root-прав — достаточно включённой отладки по USB и подтверждённого разрешения. Root требуется только для отдельных продвинутых операций внутри adb shell.
Можно ли использовать adb devices без кабеля?
Да, через отладку по Wi-Fi: устройство и компьютер должны быть в одной сети, после чего подключение выполняется командой adb connect с IP-адресом смартфона. Порядок включения беспроводной отладки зависит от версии Android — на новых версиях есть отдельный пункт в настройках разработчика.
Почему PowerShell пишет, что adb не является командой?
Терминал открыт не в папке Platform-Tools, либо путь к утилите не добавлен в PATH. Перейдите в каталог с файлами adb командой cd и используйте формат .\adb devices, либо настройте переменную окружения PATH.
Опасна ли включённая отладка по USB?
При подключении к чужому компьютеру отладка теоретически даёт доступ к данным устройства, поэтому подтверждайте запрос только на своём ПК и не отмечайте «всегда разрешать» на чужих машинах. В повседневном использовании без подключения к посторонним компьютерам включённая отладка не создаёт риска.