Команда adb devices возвращает пустой список или строку unauthorized — самая частая точка входа в тему Android Debug Bridge: утилита установлена, телефон подключён кабелем, а компьютер устройство не видит. Причина почти всегда в одном из трёх: не включена отладка по USB, не подтверждён запрос на разрешение отладки на экране смартфона или на ПК отсутствует корректный драйвер. Ниже разберём, как правильно настроить связку «ПК — смартфон» и как пользоваться основными командами ADB без риска для устройства.
Android Debug Bridge (ADB) — это консольная утилита из состава Android SDK Platform-Tools, которая позволяет компьютеру обмениваться командами со смартфоном: устанавливать приложения, копировать файлы, снимать логи, перезагружать устройство в нужный режим и выполнять десятки сервисных операций. Инструмент официальный, создан Google для разработчиков, но активно используется и обычными пользователями — например, для удаления предустановленных приложений или установки APK без Google Play.
Что такое ADB и как он работает
Архитектура ADB строится по схеме «клиент — сервер — демон». На компьютере работает клиент (команды, которые вы вводите в терминале) и сервер, управляющий подключениями. На смартфоне после включения отладки запускается фоновый процесс adbd — демон, который исполняет пришедшие команды. Связь возможна по USB-кабелю или по сети Wi-Fi (в современных версиях Android — через «беспроводную отладку»).
Важно понимать ограничения: ADB не даёт прав суперпользователя (root) сам по себе. Утилита работает в рамках прав, которые система выделяет отладочному мосту, поэтому часть системных разделов и действий остаётся недоступной. Тем не менее для большинства задач — установка и удаление пакетов, передача файлов, снятие скриншотов, просмотр логов — стандартных возможностей достаточно.
- 📦 Установка и удаление приложений напрямую с ПК
- 📁 Передача файлов между компьютером и смартфоном
- 🔧 Перезагрузка в bootloader или recovery одной командой
- 📋 Чтение системных логов для диагностики ошибок
Установка ADB на компьютер
Официальный и самый надёжный способ — скачать архив SDK Platform-Tools с сайта Google для разработчиков (developer.android.com). Архив не требует установки: достаточно распаковать его в удобную папку, например C:\platform-tools на Windows. Внутри находятся исполняемые файлы adb.exe и fastboot.exe.
Чтобы запускать утилиту из любой папки, удобно добавить путь к Platform-Tools в системную переменную PATH. В Windows это делается через «Система → Дополнительные параметры системы → Переменные среды». Без этого шага команды придётся вводить, находясь в папке с adb.exe, или указывать полный путь к файлу.
На macOS и Linux логика та же: распаковка архива и запуск через терминал. В ряде дистрибутивов Linux пакет доступен в стандартных репозиториях, но версия там может отставать от актуальной — для свежих устройств предпочтительнее официальный архив Google.
Включение отладки по USB на смартфоне
На устройстве необходимо активировать режим разработчика. Стандартный путь: открыть «Настройки → О телефоне» и несколько раз подряд нажать на строку «Номер сборки» — система покажет счётчик оставшихся нажатий, после чего появится сообщение о разблокировке меню разработчика. Точное название пункта и его расположение зависят от оболочки (MIUI, One UI, ColorOS и др.), поэтому при расхождениях сверяйтесь с документацией своей модели.
Затем в разделе «Для разработчиков» включите переключатель Отладка по USB (USB debugging). После подключения кабеля к ПК на экране смартфона появится запрос «Разрешить отладку по USB?» с отпечатком ключа компьютера — подтвердите его. При желании отметьте «Всегда разрешать с этого компьютера», чтобы запрос не появлялся повторно.
☑️ Подготовка смартфона к работе с ADB
⚠️ Внимание: не оставляйте отладку по USB включённой постоянно, если подключаете смартфон к чужим компьютерам или публичным зарядным станциям. Через активный ADB-канал с разрешённым доступом теоретически возможны установка приложений и чтение данных без вашего ведома.
Подключение и проверка связи
Подключите смартфон кабелем и выполните в терминале:
adb devices
Результат интерпретируется так: пустой список — ПК не видит устройство; строка со статусом unauthorized — на смартфоне не подтверждён запрос на отладку; статус device — всё настроено, можно работать. Если устройство не определяется, последовательно проверьте кабель (некоторые кабели передают только питание), другой USB-порт, драйверы (в Windows — в «Диспетчере устройств» не должно быть неизвестного устройства с жёлтым значком) и повторно подтвердите запрос на экране телефона.
Для беспроводного подключения в современных версиях Android предусмотрена «Беспроводная отладка» в меню разработчика: сопряжение выполняется по коду через команду adb pair, после чего устройство подключается по сети командой adb connect с указанием адреса и порта, которые показывает смартфон. Точные параметры берите с экрана своего устройства — они генерируются при каждом сеансе.
Основные команды ADB
Базовый набор команд покрывает большинство повседневных задач. Вводятся они в терминале ПК после того, как adb devices показал статус device.
| Команда | Назначение |
|---|---|
adb install app.apk | Установка APK-файла на устройство |
adb uninstall имя.пакета | Удаление приложения по имени пакета |
adb push файл /sdcard/ | Копирование файла с ПК на смартфон |
adb pull /sdcard/файл | Копирование файла со смартфона на ПК |
adb reboot | Перезагрузка устройства |
Имя пакета приложения (например, com.example.app) можно узнать через сторонние утилиты просмотра пакетов на самом смартфоне или командой adb shell pm list packages, которая выводит полный список установленных пакетов. Для удаления предустановленных системных приложений без root часто применяют вариант adb shell pm uninstall -k --user 0 имя.пакета — он убирает приложение только для текущего пользователя, не затрагивая системный раздел, что обратимо через сброс или переустановку.
adb shell pm list packages | findstr "browser"
Полезны и команды диагностики: adb logcat выводит системный журнал в реальном времени (помогает понять, какое приложение вызывает сбой), adb shell screencap и adb shell screenrecord сохраняют скриншот и видео экрана. Для перезагрузки в загрузчик используется adb reboot bootloader, в recovery — adb reboot recovery.
Как найти имя пакета приложения
Выполните adb shell pm list packages и найдите нужную строку по названию разработчика в имени пакета. Для сокращения списка в Windows добавьте фильтр через findstr, в macOS/Linux — через grep. Альтернатива — приложения-инспекторы пакетов из Google Play, которые показывают имя пакета прямо на смартфоне.
⚠️ Внимание: удаление системных пакетов через pm uninstall может нарушить работу оболочки, звонилки или сервисов обновления. Перед удалением выясните назначение пакета по его имени и убедитесь, что он не связан с критичными функциями вашей прошивки.
Типичные ошибки и их решение
Ошибка device not found означает, что сервер ADB не видит подключённого устройства. Проверьте кабель и порт, убедитесь, что отладка включена, и перезапустите сервер командой adb kill-server с последующим adb start-server. В Windows дополнительно стоит проверить «Диспетчер устройств»: если смартфон отображается как неизвестное устройство, установите драйвер от производителя или универсальный драйвер Google USB.
Статус offline обычно говорит о рассинхронизации версий ADB и демона на устройстве — помогает обновление Platform-Tools до актуальной версии и переподключение кабеля. Если команды «зависают» без ответа, отключите и снова включите отладку по USB в настройках разработчика, а также отзовите авторизации отладки (пункт «Отменить авторизацию USB-отладки») и подтвердите запрос заново.
Меры безопасности при работе с ADB
Отладочный мост — мощный инструмент, и его возможности работают в обе стороны. Подтверждая запрос на отладку, вы выдаёте конкретному компьютеру ключ доверия, поэтому подтверждайте запрос только на своём ПК и только когда сами инициировали подключение. Неизвестный запрос на разрешение отладки, появившийся без ваших действий, — повод отклонить его и проверить, к какому порту или устройству подключён смартфон.
Избегайте готовых «батников» и скриптов из непроверенных источников, которые выполняют пакетное удаление приложений: в таких наборах нередко затрагиваются пакеты, нужные для стабильной работы оболочки. Выполняйте команды осознанно, по одной, и проверяйте результат после каждой. После завершения работы отладку по USB можно выключить — настройки разработчика при этом сохранятся.
Частые вопросы
Нужен ли root для работы с ADB?
Нет. Базовые команды — установка APK, передача файлов, логи, удаление приложений для текущего пользователя — работают без прав суперпользователя. Root требуется лишь для операций с защищёнными системными разделами, но такие действия уже выходят за рамки безопасного сценария.
Почему adb devices показывает unauthorized?
На смартфоне не подтверждён запрос «Разрешить отладку по USB?». Разблокируйте экран, отключите и снова подключите кабель — запрос появится повторно. Если окно не выводится, отзовите авторизации в настройках разработчика и переподключитесь.
Можно ли пользоваться ADB без кабеля?
Да, через функцию «Беспроводная отладка» в меню разработчика: сопряжение выполняется командой adb pair с кодом с экрана, затем adb connect с адресом и портом устройства. Оба устройства должны находиться в одной сети Wi-Fi.
Удалит ли ADB мои данные при подключении?
Само подключение и стандартные команды чтения не затрагивают пользовательские данные. Риск связан только с командами удаления пакетов и сброса — выполняйте их осознанно и с пониманием последствий.
Где скачать ADB безопасно?
Только с официального сайта Google для разработчиков — раздел SDK Platform-Tools. Сторонние «сборки ADB» с файлообменников могут содержать устаревшие версии или вредоносные вложения.