Краткое руководство по ADB: установка, подключение и команды
ADB — командный инструмент (Platform‑Tools) для управления Android: позволяет устанавливать APK, выполнять shell‑команды, копировать файлы, смотреть логи и подключаться по USB или Wi‑Fi. Ниже — пошаговые инструкции и набор практических команд, которые можно применять сразу.
Установка ADB (Platform‑Tools)
- Скачайте и распакуйте Platform‑Tools в удобную папку:
- Windows: C:\platform-tools
- macOS/Linux: ~/platform-tools или /usr/local/platform-tools
- Добавьте в PATH:
- Windows (PowerShell):
[System.Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\platform-tools", "User") - macOS/Linux (bash/zsh):
echo 'export PATH="$HOME/platform-tools:$PATH"' >> ~/.bashrc && source ~/.bashrc
- Windows (PowerShell):
- Проверьте: adb version adb --help
На macOS удобно установить через Homebrew: brew install --cask android-platform-tools. Это упрощает обновление.
Подключение устройства (USB и Wi‑Fi)
Подготовьте телефон:
- Включите "Параметры разработчика" (нажмите 7 раз по номеру сборки) и активируйте "Отладка по USB".
- Подключите кабелем, разблокируйте экран и подтвердите запрос RSA‑ключа при появлении.
Проверка подключения: adb devices Ожидаемый вывод: сериал и статус device. Если unauthorized — подтвердите на телефоне.
Подключение по Wi‑Fi (быстрый способ, требует временного USB‑подключения или Wireless debugging в Android 11+): adb tcpip 5555 adb connect <IP_устройства>:5555
Не оставляйте включённую USB‑отладку и постоянные сетевые подключения на чужих или публичных устройствах — это риск безопасности.
Базовые команды и готовые сценарии
Часто используемые команды:
- Список устройств: adb devices
- Shell и получение свойства: adb shell adb shell getprop ro.build.version.release
- Установка/удаление APK: adb install app.apk adb install -r app.apk adb uninstall com.example.app
- Копирование файлов: adb push local.file /sdcard/remote.file adb pull /sdcard/remote.file ./local.file
- Логи: adb logcat adb logcat -v time > mylog.txt
- Перезагрузка: adb reboot adb reboot bootloader adb reboot recovery
- Работа с конкретным устройством: adb -s SERIAL_NUMBER <команда>
- Багрепорт: adb bugreport bugreport.zip
Полезные сценарии:
- Скриншот на устройстве и скачивание: adb shell screencap -p /sdcard/screen.png adb pull /sdcard/screen.png ./screen.png
- Извлечь APK установленного приложения: APK_PATH=$(adb shell pm path com.example.app | sed 's/^package://') adb pull $APK_PATH ./com.example.app.apk
- Перезапуск сервера adb при проблемах: adb kill-server adb start-server adb devices
Частые ошибки
- Устройство не отображается:
- проверьте USB‑кабель (многие — только для зарядки), режим USB (MTP), подтверждение RSA;
- на Windows установите OEM‑драйвер производителя;
- на Linux настройте udev‑правила и проверьте права (plugdev).
- Статус unauthorized — разблокируйте экран и подтвердите RSA‑запрос.
- insufficient permissions — используйте sudo для Linux или настройте udev/права.
FAQ
- Как обновлять platform‑tools? Периодически скачивайте новую версию или используйте пакетный менеджер (Homebrew, дистрибутивные пакеты).
- Можно ли использовать ADB без USB? Да — через Wireless debugging (Android 11+) или временно с adb tcpip 5555, но pairing безопаснее.
- Нужно ли root для большинства команд? Нет. Большинство операций работают без root; команды, затрагивающие системные разделы, потребуют root/bootloader.
- Как работать с несколькими устройствами?
Используйте adb -s
<команда> или подключайте по разным портам для Wi‑Fi.
Если хотите, подготовлю краткий cheat‑sheet с командами под Windows/macOS/Linux.