Зайти в ADB Shell: быстрый старт и реальные кейсы

ADB Shell — это доступ к командной строке Android через ADB. Чтобы войти: включите "Отладку по USB", подключите устройство (USB или Wi‑Fi) и выполните adb shell — дальше можно просматривать логи, управлять файлами и процессами, делать скриншоты и диагностировать систему без root.

Установка и подключение

  1. Установите Android SDK Platform Tools (platform-tools) и добавьте папку в PATH.
    • Проверка: adb version
  2. Включите на устройстве "Параметры разработчика" → "Отладка по USB" (и при необходимости "Отладка по Wi‑Fi").
  3. Подключение по USB:
    • adb devices — посмотреть список устройств и разрешить отладку на экране телефона.
    • adb shell — открыть оболочку.
  4. Подключение по Wi‑Fi:
    • adb connect <IP_устройства>:5555
    • adb devices
  5. Если устройство не видно:
    • adb kill-server && adb start-server
    • На Windows установите соответствующие драйверы (производитель устройства).

Всегда разрешайте ADB-подключение на экране телефона — без подтверждения устройство будет в состоянии "unauthorized".

ADB работает только при включенной отладке. Не давайте доступ незнакомым ПК: ADB даёт широкий контроль над устройством.

Полезные команды и сценарии

Ниже — компактный набор команд, которые реально пригодятся.

  • Информация о системе:
    • getprop ro.build.version.release — версия Android
    • getprop ro.product.model — модель устройства
  • Файлы:
    • ls /sdcard/ — список
    • cat /sdcard/file.txt — прочитать
    • cp /sdcard/a /sdcard/b — копировать
    • rm /sdcard/file — удалить
    • adb pull /sdcard/screenshot.png . — скачать на ПК
    • adb push local.file /sdcard/ — загрузить с ПК
  • Процессы и ресурсы:
    • ps | grep <имя> — поиск процесса
    • top — нагрузка CPU (Ctrl+C)
    • dumpsys meminfo — память приложения
    • dumpsys cpuinfo — распределение CPU
  • Логи и диагностика:
    • logcat — живые логи
    • logcat -d > logs.txt — сохранить в файл
    • dumpsys battery — состояние батареи
    • df -h /sdcard/ — свободное место
  • Управление приложениями:
    • pm list packages — список пакетов
    • pm uninstall — удалить (системные — только с root)
    • am start -n / — запустить приложение
    • pm clear — очистить данные приложения
  • Скриншоты и запись:
    • screencap /sdcard/screen.png
    • screenrecord /sdcard/record.mp4
  • Ввод:
    • input tap X Y — имитация касания
    • input text "hello" — ввод текста

Примеры реальных сценариев:

  • Диагностика зависания: logcat -v time > crash.log, затем анализировать стек ошибок.
  • Тест FPS в игре: dumpsys gfxinfo .
  • Быстрая очистка кэша приложения: pm clear .

Команда adb shell открывает среду, где префикс prompt (# — root, $ — user) указывает на уровень доступа.

Ограничения и безопасность

  • По умолчанию ADB Shell работает в пользовательском режиме: доступ к /system ограничен.
  • Чтобы получить root‑права через ADB, требуется разблокированный загрузчик и root‑менеджер (например, Magisk) или эмулятор: adb root (работает не на всех девайсах).
  • Будьте осторожны с pm uninstall и rm — ошибки могут повредить систему.
  • Не давайте доступ незнакомым компьютерам: после работы отмените авторизацию в настройках разработчика при подозрении на компрометацию.

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

  • device unauthorized — откройте экран устройства и подтвердите запрос.
  • no permissions / insufficient permissions — проверьте драйверы (Windows) или права доступа.
  • failed to connect to :5555 — включите отладку по Wi‑Fi и убедитесь, что устройство и ПК в одной сети.
  • adb: not found — platform-tools не в PATH или не установлены.

FAQ

  • Как выйти из ADB Shell? — команда exit или Ctrl+D.
  • Как подключиться по Wi‑Fi? — подключите по USB, выполните adb tcpip 5555, затем adb connect :5555.
  • Можно ли всё сделать без root? — большинство диагностических задач доступны без root; операции с системными файлами — нет.
  • Как сохранить скриншот на ПК? — в ADB: screencap /sdcard/s.png && adb pull /sdcard/s.png .

Начните с базовых команд (adb devices, adb shell, logcat, pm list packages) — они решают 80–90% повседневных задач по диагностике и управлению Android.