Основные команды ADB для Android: руководство для начинающих

Команда adb devices возвращает пустой список — типичная ситуация, когда смартфон подключён кабелем, отладка по USB включена, а компьютер устройство не видит. Причина чаще всего кроется в неподтверждённом запросе на разрешение отладки на экране телефона или в отсутствующем драйвере, и именно с проверки этого момента начинается любая работа с Android Debug Bridge.

ADB — это консольная утилита из пакета Android SDK Platform Tools, которая позволяет управлять смартфоном с компьютера: устанавливать приложения, передавать файлы, снимать логи и выполнять системные операции без root-доступа. Ниже разобраны основные команды, которые покрывают большинство повседневных задач, с примерами синтаксиса и пояснениями, что именно происходит при выполнении каждой из них.

Что нужно перед началом работы с ADB

Для запуска ADB потребуется скачать архив Platform Tools с официального сайта для разработчиков Android и распаковать его в отдельную папку. Установка не нужна — достаточно открыть командную строку в этой директории. В Windows это делается через адресную строку проводника: введите cmd и нажмите Enter.

На смартфоне необходимо активировать отладку по USB. Сначала откройте «Настройки» → «О телефоне» и несколько раз нажмите на строку «Номер сборки», пока не появится сообщение о включении режима разработчика. Затем в разделе «Для разработчиков» включите переключатель Отладка по USB. Точные названия пунктов могут отличаться в зависимости от оболочки — MIUI, One UI, ColorOS — поэтому сверяйтесь с документацией своей модели.

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

☑️ Подготовка к работе с ADB

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

Проверка подключения и базовые команды

Первая команда, которую стоит запомнить, — adb devices. Она выводит список подключённых устройств и их состояние. Если вместо серийного номера со статусом device отображается unauthorized или пустой список, проверьте кабель (некоторые кабели поддерживают только зарядку), смените USB-порт и повторно подтвердите разрешение на экране телефона.

Управление самим сервером ADB тоже выполняется командами. Если утилита зависла или не видит устройство после переподключения, помогает перезапуск:

adb kill-server

adb start-server

Когда к компьютеру подключено несколько устройств одновременно, команда выполнится с ошибкой — ADB не поймёт, к какому аппарату обращаться. В этом случае укажите серийный номер явно: adb -s SERIAL_NUMBER команда. Серийный номер берётся из вывода adb devices.

Команды перезагрузки и режимы загрузки

ADB позволяет перезагружать смартфон в разные режимы без нажатия физических кнопок — это удобно, когда кнопки повреждены или устройство находится в неудобном месте. Основные варианты:

  • 🔁 adb reboot — обычная перезагрузка устройства;
  • 🛠️ adb reboot recovery — загрузка в режим восстановления recovery;
  • adb reboot bootloader — переход в режим fastboot для работы с загрузчиком;
  • 📴 adb shell reboot -p — полное выключение устройства.

Режим recovery используется для сброса настроек и установки обновлений, а fastboot — для разблокировки загрузчика и прошивки разделов. Перед любыми операциями с загрузчиком изучите инструкцию именно для вашей модели: на некоторых устройствах разблокировка приводит к удалению всех данных и может повлиять на гарантию.

Установка и удаление приложений

Установка APK-файла с компьютера выполняется одной командой:

adb install путь/к/файлу.apk

Если приложение уже установлено и нужно обновить его с сохранением данных, добавьте флаг -r. Для установки на внешний накопитель (если устройство это поддерживает) используется флаг -s. При ошибке INSTALL_FAILED внимательно прочитайте текст после двоеточия — он указывает причину: конфликт подписей, несовместимость версии Android или недостаток места.

Удаление обычного приложения: adb uninstall имя.пакета. Отдельный случай — предустановленные системные приложения, которые не удаляются штатно. Для них применяется команда отключения для текущего пользователя:

adb shell pm uninstall -k --user 0 имя.пакета

Узнать точное имя пакета поможет команда adb shell pm list packages, а с фильтром по слову — adb shell pm list packages | findstr "слово" в Windows. Чтобы вернуть отключённое системное приложение, используйте adb shell cmd package install-existing имя.пакета.

⚠️ Внимание: отключение системных компонентов может нарушить работу устройства — например, удаление приложения, отвечающего за звонки или интерфейс, приведёт к серьёзным сбоям. Отключайте только те пакеты, назначение которых вам точно известно, и записывайте их имена, чтобы при необходимости вернуть обратно.
📊 Для чего вы чаще всего используете ADB?
Удаление предустановленных приложений
Установка APK-файлов
Прошивка и разблокировка загрузчика
Передача файлов и резервные копии

Передача файлов между ПК и смартфоном

Команды adb push и adb pull копируют файлы в обе стороны без включения режима MTP и без снятия блокировки экрана, что удобно при повреждённом дисплее. Синтаксис прост: сначала источник, затем назначение.

adb push C:\файл.zip /sdcard/Download/

adb pull /sdcard/DCIM/Camera C:\backup\

При копировании папки указывайте путь к ней целиком — содержимое будет перенесено рекурсивно. Скорость передачи зависит от версии USB-порта и кабеля, поэтому для больших объёмов используйте разъём USB 3.0, если он есть на компьютере. Путь /sdcard/ — это стандартное обозначение внутреннего хранилища, доступного пользователю, даже если физической карты памяти в устройстве нет.

Сводная таблица основных команд ADB

КомандаНазначениеПример
adb devicesСписок подключённых устройствadb devices
adb installУстановка APKadb install app.apk
adb uninstallУдаление приложенияadb uninstall com.example.app
adb rebootПерезагрузка в разные режимыadb reboot recovery
adb push / pullПередача файловadb pull /sdcard/ C:\backup

Работа с оболочкой и дополнительные возможности

Команда adb shell открывает интерактивный терминал прямо на устройстве — внутри него работают стандартные Linux-утилиты и системные команды Android. Можно выполнять и одиночные команды без входа в оболочку, например adb shell wm size покажет разрешение экрана, а adb shell dumpsys battery — сведения о состоянии аккумулятора.

Для диагностики проблем приложений полезен просмотр системного журнала: adb logcat выводит поток логов в реальном времени. Поток обширный, поэтому его обычно фильтруют по тегу или уровню важности. Чтобы остановить вывод, нажмите Ctrl+C.

Полезные команды adb shell

screencap — снимок экрана (adb shell screencap /sdcard/screen.png), screenrecord — запись видео с экрана, input tap X Y — эмуляция касания по координатам, input text — ввод текста, pm clear — очистка данных приложения без удаления.

Ещё одна практичная возможность — беспроводная отладка. На устройствах с Android 11 и новее она включается в настройках разработчика и работает через сопряжение по коду. На более старых версиях требовалось сначала подключиться кабелем и выполнить adb tcpip 5555, после чего подключаться по IP-адресу командой adb connect IP:5555. Учтите, что беспроводной режим менее стабилен и разрывает соединение при перезагрузке.

Типичные проблемы при работе с ADB

Ошибка «adb is not recognized» означает, что командная строка открыта не в папке с утилитой. Либо перейдите в каталог Platform Tools командой cd, либо добавьте путь к папке в системную переменную PATH — тогда ADB будет доступна из любого окна терминала.

Статус offline в выводе adb devices обычно указывает на конфликт версий: на компьютере могут быть установлены несколько копий ADB разной давности (например, вместе со сторонними программами для прошивки). Завершите все процессы adb.exe в диспетчере задач и запустите актуальную версию из Platform Tools. Если устройство вообще не определяется в Windows, возможной причиной является отсутствие драйвера — проверьте диспетчер устройств на предмет неопознанного оборудования.

⚠️ Внимание: не скачивайте ADB со сторонних сайтов «сборников драйверов» — используйте только официальный пакет Platform Tools от Google. Модифицированные версии утилиты могут содержать вредоносный код и получат полный доступ к вашему устройству.

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

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

Нет, большинство команд — установка приложений, передача файлов, перезагрузка, отключение системных пакетов — работают без root. Права суперпользователя требуются только для операций с защищёнными разделами внутри adb shell.

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

На смартфоне не подтверждён запрос на разрешение отладки. Отключите и снова подключите кабель, дождитесь диалога на экране и отметьте «Всегда разрешать с этого компьютера». Если диалог не появляется, отзовите разрешения в настройках разработчика и подключитесь заново.

Можно ли удалить системное приложение через ADB безвозвратно?

Команда pm uninstall --user 0 удаляет приложение только для текущего пользователя — сам пакет остаётся в системном разделе. Вернуть его можно командой cmd package install-existing или сбросом настроек.

Работает ли ADB без кабеля?

Да, на Android 11 и новее есть штатная беспроводная отладка через сопряжение по коду. На старых версиях требуется первичное кабельное подключение для активации режима tcpip.

Что делать, если команда зависает и ничего не выводит?

Прервите выполнение клавишами Ctrl+C, затем перезапустите сервер командами adb kill-server и adb start-server, переподключите устройство и проверьте его статус через adb devices.