ADB (Android Debug Bridge) — это многофункциональная консольная утилита, входящая в состав Android SDK. Она позволяет компьютеру напрямую взаимодействовать с Android-устройством по USB-кабелю или через Wi-Fi. С помощью ADB можно устанавливать и удалять приложения, копировать файлы, запускать shell-команды, просматривать системные логи, делать скриншоты и запись экрана, управлять настройками и даже выполнять автоматизированные тесты. Инструмент незаменим для разработчиков, тестировщиков и энтузиастов, желающих получить полный контроль над устройством.
Главное
Android Debug Bridge (ADB) — это клиент-серверное приложение, которое состоит из трёх компонентов: клиента (запускается на компьютере), сервера (фоновый процесс на компьютере) и демона adbd (выполняется на самом Android-устройстве). Когда разработчик или инженер подключает смартфон к ПК, ADB создаёт надёжный канал связи, через который можно передавать команды, файлы и данные.
Основные сценарии использования ADB включают отладку приложений на реальном устройстве без необходимости публиковать APK в магазине, извлечение логов для анализа ошибок, автоматизацию тестирования, бэкап данных, прошивку recovery-образов и получение root-доступа. Даже если вы не пишете код, ADB может пригодиться для извлечения скриншотов из приложений, снятия видеогида с экрана телефона или восстановления устройства после неудачной прошивки.
Поддержка ADB встроена во все официальные сборки Android, начиная с версии 2.1 (API 7). Для работы требуется включённая опция «Отладка по USB» в настройках разработчика. Начиная с Android 4.2, при первом подключении устройство запрашивает подтверждение: необходимо разрешить отладку для конкретного компьютера по его RSA-ключу.
Для 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 — это система логирования 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
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 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 |
Подключение к устройству по Wi-Fi |
Часто задаваемые вопросы
Откройте «Настройки» → «О телефоне» и нажмите 7 раз на «Номер сборки». Вернитесь в главное меню настроек — раздел «Для разработчиков» появится. Внутри включите «Отладку по USB». Начиная с Android 4.2, при первом подключении к компьютеру необходимо подтвердить RSA-ключ отладки на экране устройства.
Устройство не доверяет компьютеру. Разблокируйте экран телефона, при появлении диалога «Разрешить отладку по USB?» поставьте галочку «Всегда разрешать для этого компьютера» и нажмите «ОК». Если диалог не появляется, отключите и снова подключите USB-кабель или выполните adb kill-server && adb start-server.
ADB не требует взаимодействия с экраном. Подключите устройство по USB, дождитесь его появления в adb devices (если отладка уже была включена) и выполните adb install <путь_к_apk>. Для открытия приложения используйте adb shell am start -n <пакет>/<активность>. Если отладка не была включена заранее, восстановить доступ без экрана существенно сложнее — потребуется кастомное recovery.
ADB устанавливает APK напрямую, минуя проверки Google Play Protect во время инсталляции, что позволяет тестировать приложения до публикации. При этом финальная проверка на вредоносный код всё равно запускается после установки. ADB не требует учётной записи Google, что важно для корпоративных киосков и устройств без сервисов Google.
Да, подавляющее большинство команд ADB работает без root. Исключения — команды, требующие доступа к защищённым системным разделам (например, прямой дамп boot-раздела или изменение системных файлов). Для повседневных задач — установка приложений, логирование, скриншоты, бэкапы, эмуляция ввода — root не требуется.
ADB (Android Debug Bridge) — это фундаментальный инструмент для всех, кто работает с Android на профессиональном уровне. От базовой установки приложений до сложной автоматизации тестирования и восстановления устройств — ADB покрывает практически любой сценарий взаимодействия компьютера со смартфоном или планшетом.
Освоив команды, описанные в этой статье, вы сможете уверенно управлять Android-устройством через терминал, анализировать логи, снимать скриншоты для документации, выполнять бэкапы и ускорять процесс разработки. Регулярная практика и изучение вывода adb help сделают вас опытным пользователем этого мощного инструмента.
Итоги
Итоги
Мы разработаем мобильное приложение под ключ
IT Sectr создаёт приложения для iOS и Android для стартапов и бизнеса с 2017 года. Мы проконсультируем вас и предложим наилучшее решение.
Читайте также