Команда adb devices возвращает пустой список, хотя смартфон уже подключён кабелем к компьютеру — именно с этой проверки начинается любая работа с Android Debug Bridge, и именно на ней чаще всего спотыкаются новички. Причина почти всегда одна из трёх: не включена отладка по USB, не установлен драйвер либо на экране телефона не подтверждён запрос на разрешение отладки.
ADB — это официальная утилита командной строки из состава Android SDK Platform Tools, которая позволяет управлять Android-устройством с компьютера: устанавливать приложения, передавать файлы, снимать логи, перезагружать устройство в разные режимы и выполнять системные команды. В этом руководстве разберём установку инструмента, подключение устройства, базовые команды и типичные ошибки.
Что такое ADB и как он работает
ADB построен по клиент-серверной схеме из трёх компонентов. Клиент — это команда, которую вы вводите в терминале на компьютере. Сервер — фоновый процесс на ПК, который управляет соединением. Демон (adbd) — служба, работающая на самом Android-устройстве и выполняющая поступающие команды.
Когда вы запускаете любую команду adb, сервер сначала проверяет, подключены ли устройства, и только потом передаёт инструкцию демону. Поэтому при проблемах полезно перезапускать сервер целиком командой adb kill-server с последующим adb start-server — это часто снимает «зависшие» состояния.
⚠️ Внимание: ADB даёт доступ к системным функциям без подтверждений на экране телефона. Команды удаления системных приложений или очистки данных выполняются сразу и необратимо — проверяйте синтаксис перед нажатием Enter.
Установка ADB на компьютер
Самый надёжный способ — скачать архив SDK Platform Tools с официального сайта Android для разработчиков. Пакет доступен для Windows, macOS и Linux и не требует установки полной среды Android Studio.
Порядок действий для Windows выглядит так:
- 📦 Скачайте архив Platform Tools и распакуйте его, например, в папку
C:\platform-tools. - 📂 Откройте эту папку, зажмите Shift и кликните правой кнопкой по пустому месту — выберите «Открыть окно PowerShell здесь» или «Открыть в терминале».
- ✅ Введите
adb version— если отображается версия утилиты, установка прошла успешно. - 🔧 При желании добавьте путь к папке в системную переменную PATH, чтобы запускать ADB из любого каталога.
На macOS и Linux удобнее ставить пакет через менеджер пакетов — например, brew install android-platform-tools на macOS. В дистрибутивах Linux пакет обычно называется android-tools-adb или похожим образом — точное имя зависит от репозитория вашей системы.
Включение отладки по USB на смартфоне
Без активированной отладки по USB компьютер физически не увидит устройство через ADB. Сначала необходимо разблокировать скрытое меню разработчика: откройте «Настройки» → «О телефоне» и несколько раз подряд нажмите на пункт «Номер сборки», пока не появится сообщение о том, что вы стали разработчиком.
Затем перейдите в появившийся раздел «Для разработчиков» (его расположение отличается у разных производителей — ищите в разделе «Система» или через поиск по настройкам) и включите переключатель «Отладка по USB». Точные названия пунктов меню зависят от оболочки и версии Android, поэтому при расхождениях сверяйтесь с документацией производителя вашей модели.
☑️ Подготовка устройства к подключению
⚠️ Внимание: не оставляйте отладку по USB включённой постоянно на устройстве, которое вы носите с собой. При подключении к чужому компьютеру и случайном подтверждении запроса посторонний ПК может получить доступ к данным. После завершения работы функцию разумно отключать.
Первое подключение и проверка связи
Подключите смартфон кабелем, разблокируйте экран и выполните в терминале:
adb devices
При первом подключении на экране телефона появится диалог «Разрешить отладку по USB?» с отпечатком ключа компьютера. Отметьте «Всегда разрешать с этого компьютера» и подтвердите. После этого в выводе команды рядом с серийным номером устройства должно появиться слово device — это признак полностью рабочего соединения.
Если вместо device отображается unauthorized, значит, запрос на телефоне не был подтверждён. Если список пуст — проверьте кабель (некоторые кабели поддерживают только зарядку), драйверы на Windows и состояние переключателя отладки.
Основные команды ADB
Ниже — команды, которые покрывают большинство повседневных задач. Все они выполняются из терминала на компьютере при подключённом устройстве.
| Команда | Назначение |
|---|---|
adb install app.apk | Установка APK-файла на устройство |
adb uninstall com.example.app | Удаление приложения по имени пакета |
adb push file.zip /sdcard/ | Копирование файла с ПК на устройство |
adb pull /sdcard/file.zip | Копирование файла с устройства на ПК |
adb reboot | Перезагрузка устройства |
Для диагностики полезна команда adb logcat — она выводит системный журнал в реальном времени, что помогает найти причину сбоев приложений. Чтобы открыть командную оболочку самого устройства, используйте adb shell: внутри неё доступны стандартные Linux-команды вроде ls, cd и pm list packages для просмотра установленных пакетов.
Узнать точное имя пакета приложения перед удалением можно командой:
adb shell pm list packages | grep "название"
Подключение по Wi-Fi
Начиная с Android 11, система поддерживает беспроводную отладку без предварительного USB-подключения. В разделе «Для разработчиков» включите «Беспроводная отладка», откройте пункт «Сопряжение устройства с кодом» и выполните на компьютере:
adb pair IP_адрес:порт
После ввода кода с экрана телефона подключитесь командой adb connect IP_адрес:порт. На старых версиях Android беспроводное подключение требовало сначала выполнить adb tcpip 5555 по кабелю — этот способ менее удобен и зависит от прошивки конкретного устройства.
Что делать, если беспроводное подключение не работает
Убедитесь, что компьютер и смартфон находятся в одной Wi-Fi сети. Проверьте, что брандмауэр на ПК не блокирует ADB. Попробуйте перезапустить сервер командой adb kill-server и повторить сопряжение.
Решение типичных ошибок
Ошибка device not found означает, что сервер ADB не видит подключённых устройств. Проверьте кабель, переключите USB-порт (лучше использовать порт напрямую на материнской плате), убедитесь, что отладка включена, и перезапустите сервер.
Статус offline обычно указывает на рассинхронизацию между версией ADB на компьютере и прошивкой устройства. Обновите Platform Tools до актуальной версии и повторите попытку. Ошибки установки приложений вида INSTALL_FAILED имеют разные причины — от конфликта подписей до нехватки памяти; текст ошибки после кода обычно содержит конкретное пояснение.
- 🔌 Пустой список в
adb devices— проверьте кабель, драйвер и переключатель отладки. - 🔐 Статус
unauthorized— подтвердите запрос на экране телефона. - 📴 Статус
offline— обновите Platform Tools и перезапустите сервер. - 🚫 Ошибка установки APK — читайте пояснение после кода ошибки.
Часто задаваемые вопросы
Нужен ли root-доступ для работы с ADB?
Нет. Большинство команд ADB — установка приложений, передача файлов, логи, перезагрузка — работают на устройстве без root-прав. Root требуется лишь для отдельных операций внутри adb shell, затрагивающих защищённые системные разделы.
Почему Windows не видит телефон в ADB, хотя файлы передаются?
Передача файлов (MTP) и отладка по USB — разные режимы. Для ADB на Windows может потребоваться драйвер от производителя смартфона, а также включённая отладка по USB в настройках разработчика.
Можно ли удалить предустановленные приложения через ADB?
Да, командой adb shell pm uninstall --user 0 имя_пакета можно отключить системное приложение для текущего пользователя без root. Однако удаление критичных компонентов способно нарушить работу устройства — заранее выясняйте назначение пакета и действуйте на свой риск.
Безопасно ли оставлять отладку по USB включённой?
При подключении к незнакомому компьютеру включённая отладка создаёт риск несанкционированного доступа, если подтвердить запрос. На личном устройстве после завершения работы функцию рекомендуется отключать.
Работает ли ADB на macOS и Linux?
Да, Platform Tools выпускаются для всех трёх платформ. На Linux дополнительно может понадобиться настройка правил udev для доступа к устройству без прав суперпользователя.