ADB: основы работы с Android Debug Bridge и популярные команды

Автор: IT Sectr Опубликовано: 2026-02-12 Время чтения: 10 мин

ADB (Android Debug Bridge) — это многофункциональная консольная утилита, входящая в состав Android SDK. Она позволяет компьютеру напрямую взаимодействовать с Android-устройством по USB-кабелю или через Wi-Fi. С помощью ADB можно устанавливать и удалять приложения, копировать файлы, запускать shell-команды, просматривать системные логи, делать скриншоты и запись экрана, управлять настройками и даже выполнять автоматизированные тесты. Инструмент незаменим для разработчиков, тестировщиков и энтузиастов, желающих получить полный контроль над устройством.

Главное

  • ADB — консольный инструмент для отладки Android, часть платформенных инструментов SDK
  • Подключение — работа по USB и через Wi-Fi (adb tcpip / adb connect)
  • Базовые команды — adb devices, adb shell, adb install, adb uninstall, adb pull / push
  • Работа с логами — adb logcat с фильтрацией по тегам и уровням важности
  • Скриншоты и запись — adb shell screencap и adb shell screenrecord
  • Несколько устройств — adb -s для выбора конкретного устройства
  • Автоматизация — adb shell input для эмуляции касаний, свайпов и ввода текста

Что такое ADB и зачем он нужен

Android Debug Bridge (ADB) — это клиент-серверное приложение, которое состоит из трёх компонентов: клиента (запускается на компьютере), сервера (фоновый процесс на компьютере) и демона adbd (выполняется на самом Android-устройстве). Когда разработчик или инженер подключает смартфон к ПК, ADB создаёт надёжный канал связи, через который можно передавать команды, файлы и данные.

Основные сценарии использования ADB включают отладку приложений на реальном устройстве без необходимости публиковать APK в магазине, извлечение логов для анализа ошибок, автоматизацию тестирования, бэкап данных, прошивку recovery-образов и получение root-доступа. Даже если вы не пишете код, ADB может пригодиться для извлечения скриншотов из приложений, снятия видеогида с экрана телефона или восстановления устройства после неудачной прошивки.

Поддержка ADB встроена во все официальные сборки Android, начиная с версии 2.1 (API 7). Для работы требуется включённая опция «Отладка по USB» в настройках разработчика. Начиная с Android 4.2, при первом подключении устройство запрашивает подтверждение: необходимо разрешить отладку для конкретного компьютера по его RSA-ключу.

Установка ADB на компьютер

Для Windows — скачайте Platform Tools с официального сайта Google Developers, распакуйте архив в папку C:\adb и добавьте этот путь в переменную окружения PATH. После перезапуска терминала команда adb станет доступна глобально.

Для macOS — проще всего установить ADB через менеджер пакетов Homebrew: выполните brew install android-platform-tools. Все зависимости будут разрешены автоматически.

Для Linux — в дистрибутивах на основе Debian / Ubuntu: sudo apt install adb. После установки добавьте пользователя в группу plugdev: sudo usermod -aG plugdev $USER и перелогиньтесь, чтобы ADB получил доступ к USB-устройствам.

Проверить корректность установки можно командой adb version. Если в ответ выводится номер версии Android Debug Bridge, инструмент готов к работе.

Подключение устройства и базовые команды

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

adb devices
List of devices attached
emulator-5554   device
0123456789ABCD  device

Установка приложения — одна из самых частых операций. Достаточно указать путь к APK-файлу:

adb install C:\apps\myapp.apk

Если приложение уже установлено, но требуется заменить его обновлённой версией, добавьте флаг -r (replace):

adb install -r C:\apps\myapp-v2.apk

Удаление приложения выполняется по имени пакета:

adb uninstall com.example.myapp

Копирование файлов — adb pull извлекает файл с устройства на компьютер, adb push загружает файл на устройство:

adb pull /sdcard/DCIM/screenshot.png .
adb push myfile.txt /sdcard/Documents/

Интерактивный shell — команда adb shell открывает командную оболочку устройства. Внутри неё можно выполнять стандартные Linux-команды: ls, ps, top, dumpsys, pm, am и другие.

adb shell
tissot_sprout:/ $ ls -la /sdcard/
tissot_sprout:/ $ ps | grep com.android.chrome

Запуск активности через ADB позволяет открыть любое приложение или экран без ручного поиска иконки:

adb shell am start -n com.android.chrome/com.google.android.apps.chrome.Main

Работа с логами: Logcat

Logcat — это система логирования Android, которая собирает сообщения от приложений, системных служб и ядра. Инструмент незаменим при отладке: по логам можно понять, почему упало приложение, какой метод вызвал исключение или как долго выполняется конкретная операция.

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

adb logcat -s MainActivity:V

Уровни важности логирования (от наиболее подробного к критическому): V (Verbose), D (Debug), I (Info), W (Warning), E (Error), F (Fatal). Комбинация тега и уровня позволяет выделить только нужные сообщения.

Для очистки накопленного буфера перед тестом:

adb logcat -c

А чтобы сохранить логи в файл:

adb logcat -d > app_logs.txt

Флаг -d (dump) выводит текущий буфер и завершает работу, не блокируя терминал. Это удобно для скриптов автоматизации.

Скриншоты, запись экрана и полезные диагностические команды

Скриншот делается командой adb shell screencap. Результат сохраняется в файл, который затем извлекается через adb pull:

adb shell screencap /sdcard/screen.png
adb pull /sdcard/screen.png

Можно объединить обе операции в одну строку с помощью подстановки и конвейера. На практике это ускоряет создание документации и отчётов о тестировании.

Запись экрана доступна на Android 4.4+ (API 19). Длительность записи по умолчанию — 180 секунд, битрейт — 4 Мбит/с. Основная команда:

adb shell screenrecord /sdcard/demo.mp4

Для остановки записи нажмите Ctrl+C. Разрешение видео соответствует разрешению экрана устройства, но не превышает 1080p. Для изменения битрейта укажите --bit-rate:

adb shell screenrecord --bit-rate 8000000 /sdcard/demo.mp4

Диагностические команды: adb shell dumpsys выводит состояние всех системных служб. Чтобы получить информацию только о батарее:

adb shell dumpsys battery

Список установленных пакетов можно получить через Package Manager:

adb shell pm list packages

Сброс настроек приложения (аналог очистки данных в настройках):

adb shell pm clear com.example.myapp

Продвинутые возможности ADB

Wi-Fi отладка избавляет от необходимости держать устройство подключённым по USB. Убедитесь, что компьютер и устройство находятся в одной сети. Сначала выполните adb tcpip 5555, отключите USB, затем подключитесь по IP:

adb tcpip 5555
adb connect 192.168.1.100:5555

Если IP-адрес устройства неизвестен, узнайте его через adb shell ip addr show wlan0 до отключения кабеля.

Бэкап данных приложения или всей системы выполняется без root:

adb backup -apk -shared -all -system -f mybackup.ab

Восстановление из бэкапа:

adb restore mybackup.ab

Эмуляция ввода — команда adb shell input позволяет симулировать касания, свайпы, нажатие клавиш и ввод текста. Это основа для автоматизации UI-тестов без дополнительных фреймворков:

adb shell input tap 500 1000
adb shell input swipe 300 500 800 500
adb shell input text "Hello, ADB!"

Перезагрузка в разные режимы:

adb reboot          # обычная перезагрузка
adb reboot recovery # режим восстановления
adb reboot bootloader # загрузчик (fastboot)

Режим fastboot открывает доступ к прошивке образов, разблокировке загрузчика и установке кастомных recovery.

Работа с несколькими устройствами

Когда подключено несколько устройств или эмуляторов одновременно, ADB требует указать конкретный серийный номер. Команда adb devices выводит все подключённые девайсы с их серийными номерами.

Для адресации команды конкретному устройству используйте флаг -s:

adb -s 0123456789ABCD install myapp.apk

Если устройство одно, можно обойтись без флага. Однако в CI-среде, где одновременно запущены несколько эмуляторов, указание серийного номера обязательно.

Убить сервер ADB — если устройство перестало определяться или выдаёт ошибку, помогает перезапуск сервера:

adb kill-server
adb start-server

После этого выполните adb devices — сервер перезапустится и перенаправит запросы на демоны устройств.

Основные команды ADB: сводная таблица

Команда Описание
adb devices Показать список подключённых устройств
adb install Установка APK-файла на устройство
adb uninstall Удаление приложения по имени пакета
adb shell Запуск интерактивной командной оболочки
adb push Копирование файла с компьютера на устройство
adb pull Копирование файла с устройства на компьютер
adb logcat Просмотр логов системы и приложений
adb shell screencap Создание скриншота экрана
adb shell screenrecord Запись видео с экрана
adb reboot Перезагрузка устройства
adb tcpip 5555 Переключение ADB в режим TCP/IP для Wi-Fi
adb connect :5555 Подключение к устройству по Wi-Fi

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

Как включить отладку по USB, если пункт «Для разработчиков» скрыт?

Откройте «Настройки» → «О телефоне» и нажмите 7 раз на «Номер сборки». Вернитесь в главное меню настроек — раздел «Для разработчиков» появится. Внутри включите «Отладку по USB». Начиная с Android 4.2, при первом подключении к компьютеру необходимо подтвердить RSA-ключ отладки на экране устройства.

Почему команда adb devices показывает состояние unauthorized?

Устройство не доверяет компьютеру. Разблокируйте экран телефона, при появлении диалога «Разрешить отладку по USB?» поставьте галочку «Всегда разрешать для этого компьютера» и нажмите «ОК». Если диалог не появляется, отключите и снова подключите USB-кабель или выполните adb kill-server && adb start-server.

Как установить APK на устройство без экрана (с разбитым дисплеем)?

ADB не требует взаимодействия с экраном. Подключите устройство по USB, дождитесь его появления в adb devices (если отладка уже была включена) и выполните adb install <путь_к_apk>. Для открытия приложения используйте adb shell am start -n <пакет>/<активность>. Если отладка не была включена заранее, восстановить доступ без экрана существенно сложнее — потребуется кастомное recovery.

Чем отличается adb install от установки через Google Play?

ADB устанавливает APK напрямую, минуя проверки Google Play Protect во время инсталляции, что позволяет тестировать приложения до публикации. При этом финальная проверка на вредоносный код всё равно запускается после установки. ADB не требует учётной записи Google, что важно для корпоративных киосков и устройств без сервисов Google.

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

Да, подавляющее большинство команд ADB работает без root. Исключения — команды, требующие доступа к защищённым системным разделам (например, прямой дамп boot-раздела или изменение системных файлов). Для повседневных задач — установка приложений, логирование, скриншоты, бэкапы, эмуляция ввода — root не требуется.

Заключение

ADB (Android Debug Bridge) — это фундаментальный инструмент для всех, кто работает с Android на профессиональном уровне. От базовой установки приложений до сложной автоматизации тестирования и восстановления устройств — ADB покрывает практически любой сценарий взаимодействия компьютера со смартфоном или планшетом.

Освоив команды, описанные в этой статье, вы сможете уверенно управлять Android-устройством через терминал, анализировать логи, снимать скриншоты для документации, выполнять бэкапы и ускорять процесс разработки. Регулярная практика и изучение вывода adb help сделают вас опытным пользователем этого мощного инструмента.

Итоги

  • ADB — консольный инструмент для отладки Android, входящий в состав Platform Tools Android SDK
  • Подключение — работа по USB и через Wi-Fi с командами adb tcpip и adb connect
  • Базовые команды — adb devices, adb shell, adb install, adb uninstall, adb pull / adb push
  • Logcat — система логирования Android с фильтрацией по тегам и уровням важности V/D/I/W/E/F
  • Скриншоты и запись — adb shell screencap и adb shell screenrecord для создания снимков и видео экрана
  • Продвинутые возможности — Wi-Fi отладка, бэкапы данных, эмуляция ввода, перезагрузка в fastboot и recovery
  • Несколько устройств — флаг -s для выбора конкретного устройства при параллельном подключении

Итоги

  • ADB — консольный инструмент для отладки Android, входящий в состав Platform Tools Android SDK
  • Подключение — работа по USB и через Wi-Fi с командами adb tcpip и adb connect
  • Базовые команды — adb devices, adb shell, adb install, adb uninstall, adb pull / adb push
  • Logcat — система логирования Android с фильтрацией по тегам и уровням важности V/D/I/W/E/F
  • Скриншоты и запись — adb shell screencap и adb shell screenrecord для создания снимков и видео экрана
  • Продвинутые возможности — Wi-Fi отладка, бэкапы данных, эмуляция ввода, перезагрузка в fastboot и recovery
  • Несколько устройств — флаг -s для выбора конкретного устройства при параллельном подключении

Мы разработаем мобильное приложение под ключ

IT Sectr создаёт приложения для iOS и Android для стартапов и бизнеса с 2017 года. Мы проконсультируем вас и предложим наилучшее решение.

Обсудить проект

Читайте также