Базовый набор команд ADB — быстрая шпаргалка для работы с Android

Короткий ответ: для 90% задач хватает набора: adb devices, adb connect/tcpip, adb install/uninstall, adb shell (pm, am, settings), adb push/pull, adb reboot, adb logcat, adb screencap. Ниже — компактные команды и примеры для практического использования.

Подготовка и подключение

  1. Включите "Отладку по USB" в опциях разработчика.
  2. Установите platform-tools (adb) и подключите устройство по USB.

Основные команды:

  • adb devices — список подключённых устройств (если пусто — проверьте кабель/драйверы).
  • adb kill-server / adb start-server — перезапуск сервера ADB.
  • По Wi‑Fi:
    • Подключитесь по USB и выполните adb tcpip 5555
    • Отключите кабель и подключитесь: adb connect <IP>:5555

Для кратковременных тестов Wi‑Fi удобнее: после adb tcpip 5555 устройство останется доступно по IP, но при перезагрузке потребуется повторить шаги.

Основные операции с приложениями и системой

Установка и удаление:

  • adb install myapp.apk — установка.
  • adb install -r myapp.apk — переустановка без удаления данных.
  • adb uninstall com.example.app — удаление по имени пакета.

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

  • adb reboot — обычная перезагрузка.
  • adb reboot recovery — в recovery.
  • adb reboot bootloader — в bootloader/fastboot.

Запуск активности:

  • adb shell am start -n com.example/.MainActivity

Управление питанием/состоянием:

  • adb shell dumpsys battery — состояние батареи.
  • adb shell settings put global adb_enabled 1 — включение ADB программно (требует прав).

Работа с shell, файлами и правами

Открыть shell:

  • adb shell — переход в терминал устройства. Выйти — exit.

Утилиты package manager:

  • adb shell pm list packages — список пакетов.
  • adb shell pm clear com.example.app — очистка данных приложения.

Копирование файлов:

  • adb push localfile /sdcard/ — на устройство.
  • adb pull /sdcard/remotefile ./ — с устройства на ПК.

Просмотр процессов и файлов:

  • Внутри shell: ls /system/app, top, ps.

Не редактируйте системные разделы без root и полного понимания — это может привести к нерабочему устройству.

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

Скриншот:

  • adb shell screencap -p /sdcard/screen.png
  • adb pull /sdcard/screen.png ./screen.png

Запись экрана (Android 4.4+):

  • adb shell screenrecord /sdcard/demo.mp4 (Ctrl+C для остановки), затем adb pull /sdcard/demo.mp4.

Логи:

  • Просмотр в реальном времени: adb logcat
  • Фильтрация по тегу/уровню: adb logcat ActivityManager:I *:S
  • Поиск по ключевому слову: adb logcat | grep "Error"
  • Сохранить лог в файл: adb logcat -d > logcat.txt

Частые ошибки

  • Устройство не отображается в adb devices — проверьте USB-режим (MTP), драйверы и доверие компьютеру (на смартфоне подтвердите RSA‑ключ).
  • INSTALL_FAILED_* — проверьте целостность APK и совместимость ABI/SDK.
  • Проблемы с Wi‑Fi ADB — убедитесь, что IP устройства и ПК в одной сети и нет межсетевых ограничений.

FAQ

  • Как быстро открыть shell с root? — Если устройство рутовано: adb root затем adb shell. На большинстве устройств adb root не доступен.
  • Как снять скриншот без сохранения на устройство? — Комбинация: adb exec-out screencap -p > screen.png.
  • Можно ли автоматизировать установки? — Да, используйте скрипты, например adb install -r в bash/CI.

Эта шпаргалка содержит практические команды, которые стоит держать под рукой. Для продвинутых сценариев комбинируйте команды в скрипты и добавляйте проверки статуса (adb wait-for-device, adb shell echo $?).