Ошибка ADB «failed to get feature set: no devices/emulators found»: причины и решение

Ошибка adb: failed to get feature set: no devices/emulators found появляется в терминале в тот момент, когда команда adb devices возвращает пустой список, а любая последующая команда — например, adb shell или adb install — не находит ни одного подключённого устройства. Это означает, что ADB-сервер на компьютере работает, но не видит ни смартфон, ни эмулятор, поэтому ему не с чем устанавливать соединение.

Часть «failed to get feature set» указывает на то, что клиент ADB попытался запросить набор возможностей устройства и не получил ответа, поскольку целевого девайса просто нет в списке. Корень проблемы почти всегда лежит в одной из четырёх зон: отключённая отладка по USB, проблема с драйвером, неисправный кабель или порт, либо конфликт версий ADB. Ниже разберём каждую причину и безопасные способы диагностики.

Что означает эта ошибка и как работает цепочка подключения

Чтобы понять, где сбой, полезно знать, из чего состоит соединение. Команда на компьютере проходит путь: ADB-клиент → ADB-сервер → USB-драйвер → демон adbd на смартфоне. Ошибка «no devices/emulators found» возникает, когда цепочка обрывается на любом из звеньев, и сервер не может перечислить ни одно устройство.

Проверить состояние цепочки можно одной командой:

adb devices

Если список пуст — устройство вообще не обнаружено. Если в списке есть строка со статусом unauthorized, соединение есть, но смартфон не подтвердил доверие компьютеру. Если статус offline — обычно несовпадение версий ADB или сбой демона на устройстве.

  • 🔌 Нет строки в списке — физическое подключение, драйвер или отладка по USB.
  • 🔐 unauthorized — нужно подтвердить отпечаток RSA-ключа на экране телефона.
  • 📴 offline — перезапуск ADB-сервера или обновление Platform Tools.
  • device — всё в порядке, ошибка возникала из-за другой причины (например, неверный serial).

Шаг 1. Проверка кабеля, порта и режима подключения

Начать стоит с самого простого и обратимого. Значительная часть USB-кабелей в комплекте с зарядными устройствами предназначена только для зарядки и не содержит линий передачи данных. Возьмите кабель, которым точно передавали файлы, либо проверьте текущий, подключив телефон и посмотрев, появляется ли он как накопитель в режиме передачи файлов.

Далее проверьте сам порт. Подключите смартфон напрямую к порту материнской платы (на стационарном ПК — к задней панели), минуя хабы и удлинители. На телефоне откройте шторку уведомлений: при подключении по USB там обычно есть пункт выбора режима. Переключите его с «Только зарядка» на Передача файлов (MTP) — на многих прошивках это помогает системе корректно инициализировать соединение.

⚠️ Внимание: дешёвые USB-хабы и передние панели корпусов часто дают нестабильное питание и обрывы данных. Для диагностики используйте только прямое подключение к порту компьютера.

Шаг 2. Включение отладки по USB на смартфоне

Без активной опции «Отладка по USB» демон adbd на устройстве не принимает подключения, и список adb devices останется пустым. Опция скрыта в меню «Для разработчиков», которое по умолчанию не отображается.

Общий порядок на чистом Android выглядит так: откройте Настройки → О телефоне и несколько раз нажмите на пункт Номер сборки, пока не появится сообщение о том, что вы стали разработчиком. Затем вернитесь в настройки, найдите раздел Для разработчиков (местоположение зависит от оболочки — иногда внутри «Система» или «Расширенные настройки») и включите Отладка по USB.

Учтите, что в оболочках MIUI, ColorOS, One UI и других путь к пунктам может отличаться, а для включения некоторых опций разработчика система может запросить пароль от учётной записи или SIM-карту. Точный путь для вашей модели стоит сверить с документацией производителя.

☑️ Подготовка смартфона к подключению

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

Шаг 3. Подтверждение RSA-ключа — статус unauthorized

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

Диалог легко пропустить: он может скрываться за блокировкой экрана или не появиться из-за сбоя. В этом случае в меню разработчика нажмите пункт вроде Отозвать авторизацию отладки по USB (название может отличаться), отключите и снова подключите кабель — запрос появится повторно. Отметьте «Всегда разрешать с этого компьютера», чтобы не подтверждать каждый раз.

📊 На каком этапе у вас возникла ошибка?
Устройство вообще не видно в adb devices
Статус unauthorized
Статус offline
Ошибка только с эмулятором

Шаг 4. Драйверы и ADB-сервер на Windows

Если телефон настроен правильно, но adb devices пуст, проверьте, как устройство видит сама Windows. Откройте Диспетчер устройств и посмотрите, нет ли смартфона в разделе «Другие устройства» с жёлтым значком — это признак отсутствующего драйвера. Обычно помогает установка Google USB Driver из SDK Manager либо фирменного драйвера производителя телефона.

Следующий шаг — перезапуск ADB-сервера, который мог зависнуть или работать на устаревшей версии:

adb kill-server

adb start-server

adb devices

Ещё одна частая причина — конфликт нескольких копий adb.exe на компьютере: одна в Platform Tools, другая в составе Android Studio, третья — в папке какой-нибудь утилиты. Разные версии сервера несовместимы между собой, и клиент может подключаться не к тому серверу. Проверить версию можно командой adb version, а лишние копии стоит удалить, оставив актуальные Platform Tools.

СимптомВероятная причинаЧто проверить
Пустой список adb devicesКабель без линий данных, выключена отладкаДругой кабель, настройки разработчика
Статус unauthorizedНе подтверждён RSA-ключДиалог на экране телефона, отзыв авторизации
Статус offlineКонфликт версий ADBadb kill-server, обновление Platform Tools
Устройство с жёлтым значком в WindowsОтсутствует USB-драйверДиспетчер устройств, установка драйвера
Эмулятор не виденЭмулятор не запущен или другой ADBЗапуск эмулятора до команды, единая версия adb
⚠️ Внимание: скачивайте Platform Tools и драйверы только с официальных источников — сайта Android Developers и сайта производителя смартфона. Сторонние «пакеты ADB» нередко содержат устаревшие или модифицированные файлы.

Особый случай: ошибка при работе с эмулятором

Формулировка «no devices/emulators found» появляется и тогда, когда вы работаете только с эмулятором, но он не запущен или не успел загрузиться. Убедитесь, что виртуальное устройство полностью стартовало — до экрана блокировки, — и лишь затем выполняйте команды. Проверить список запущенных эмуляторов можно командой emulator -list-avds.

Отдельная ловушка — эмуляторы, поставляющиеся с собственным adb.exe (например, некоторые игровые эмуляторы Android). Их сервер может занять порт и конфликтовать с Platform Tools. В такой ситуации помогает завершить все процессы adb через диспетчер задач и запустить сервер заново из одной выбранной папки.

Как подключиться к устройству по Wi-Fi вместо USB

На Android 11 и новее в меню разработчика есть «Беспроводная отладка» с сопряжением по коду. На старых версиях требуется сначала подключиться по USB и выполнить adb tcpip 5555, затем adb connect IP_устройства:5555. Телефон и ПК должны быть в одной сети.

Когда ничего не помогает

Если все шаги выполнены, а устройство по-прежнему не определяется, сузьте поиск методом исключения. Подключите смартфон к другому компьютеру: если там он виден — проблема в системе или драйверах первого ПК. Если и там не виден — вероятны неисправность разъёма телефона или сбой в его прошивке.

Также проверьте сам разъём смартфона: загрязнение или окисление контактов может пропускать питание, но блокировать линии данных. Аккуратная чистка и проверка другим кабелем — безопасный способ это исключить. При подозрении на аппаратную неисправность разъёма лучше обратиться в сервис, а не пытаться ремонтировать самостоятельно.

Частые вопросы

Почему adb devices показывает пустой список, хотя телефон заряжается?

Зарядка использует только силовые линии USB. Для ADB нужны линии данных, включённая отладка по USB и корректный драйвер. Чаще всего виноват кабель «только для зарядки» или выключенная опция в меню разработчика.

Что делать, если устройство в статусе unauthorized?

Разблокируйте экран смартфона и подтвердите диалог «Разрешить отладку по USB?». Если диалог не появляется, отзовите авторизацию в настройках разработчика и переподключите кабель.

Может ли антивирус блокировать ADB?

Да, некоторые антивирусы и брандмауэры блокируют локальные соединения ADB-сервера. Временно отключите защиту или добавьте adb.exe в исключения и проверьте, появилось ли устройство.

Нужен ли root для работы ADB?

Нет. Обычные команды ADB — установка приложений, shell, передача файлов, логи — работают без root-прав. Достаточно включённой отладки по USB и подтверждённого ключа.

Ошибка возникает только с эмулятором. В чём причина?

Скорее всего, эмулятор не запущен, ещё загружается или использует собственную версию adb, конфликтующую с Platform Tools. Запустите эмулятор до выполнения команд и убедитесь, что в системе используется одна актуальная версия adb.