ADB на телефоне без компьютера и root: как это работает
Как пользоваться ADB прямо на Android без ПК, root и кабеля. Отладка по Wi-Fi на Android 11+, сопряжение телефона с самим собой и adb shell в приложении.
Да, ADB можно запускать на самом телефоне, без компьютера и без root. Начиная с Android 11, служба adb телефона (adbd) умеет слушать сеть через «Отладку по Wi-Fi». Приложение на этом же телефоне сопрягается с ней и подключается так же, как это сделал бы компьютер. Права получаются те же, что у adb shell с ПК. Нужны только Wi-Fi и около минуты на разовое сопряжение.
Почему телефон не может просто «подключиться к себе по USB»
Обычная отладка по USB устроена так: компьютер главный, телефон отвечает. Приложение на телефоне не может стать «компьютером» для собственного USB-порта, поэтому раньше без ПК было никак. «Отладка по Wi-Fi» меняет картину: adbd открывает сетевой порт с шифрованием, и подключиться к нему может любое сопряжённое устройство в той же сети, в том числе сам телефон через свой же Wi-Fi.
Что для этого нужно:
| Требование | Почему |
|---|---|
| Android 11 или новее | В Android 10 и старше «Отладки по Wi-Fi» нет |
| Подключение к Wi-Fi | Без Wi-Fi Android не даёт включить «Отладку по Wi-Fi». Интернет не нужен, подойдёт любая сеть |
| Раздел «Для разработчиков» | Там находится переключатель «Отладка по Wi-Fi» |
Root, кабель и второе устройство не нужны.
Как это сделать в ADB Kit
ADB Kit для Android содержит встроенный adb-клиент и подключается к adbd своего же телефона. Других приложений ставить не нужно.
- Установите ADB Kit и откройте вкладку «Главная». Там пошаговая инструкция «Подключите телефон к самому себе» из пяти шагов. Первые три приложение отмечает само, как только телефон о них сообщит.
- «Подключите Wi-Fi». Любая сеть, хоть домашний роутер без интернета.
- «Включите режим разработчика». В разделе «О телефоне» нажмите «Номер сборки» 7 раз. На Xiaomi это «Версия ОС» или «Версия MIUI», на Samsung «Сведения о ПО» › «Номер сборки». Пути для разных брендов собраны в статье отладка по Wi-Fi на Xiaomi, Honor, Samsung и других.
- «Включите отладку по Wi-Fi». Кнопка «Открыть «Для разработчиков»» ведёт прямо в нужный раздел. Включите «Отладку по Wi-Fi» и подтвердите запрос.
- «Сопряжение по коду». Вернитесь в ADB Kit и нажмите «Начать сопряжение». Затем в «Отладке по Wi-Fi» нажмите «Подключить устройство с помощью кода подключения». Появится 6-значный код, а сверху придёт уведомление от ADB Kit с полем ввода. Введите код прямо в уведомлении, не уходя с экрана настроек.
- «Подключите ADB Kit». Подключение происходит само сразу после сопряжения. Статус на «Главной» сменится на «Подключено».
Почему код вводится в уведомлении: окно с кодом в Android закрывается, как только вы уходите из раздела «Для разработчиков», и вместе с ним пропадает код. Уведомление позволяет ввести его, оставаясь на месте. Адрес и порт сопряжения ADB Kit находит в сети сам (через mDNS, как Android Studio), вводить их не нужно. Если уведомления запрещены, приложение предложит «Разрешить уведомления» или ввести код в самом ADB Kit в режиме разделённого экрана.
Сопряжение делается один раз и сохраняется после перезапуска приложения. В следующий раз достаточно включить «Отладку по Wi-Fi», и ADB Kit переподключится сам, хотя порт каждый раз новый.
Что можно делать после подключения
- Shell. Настоящий терминал: история команд, Tab, Ctrl+C, цвета,
top,viиless, дополнительные ряды клавиш, сниппеты и подсказки папок и файлов. Подробнее в статье терминал Android без root. - Auto script. Рецепты: сохранённые наборы shell-команд, которые можно запускать вручную или каждый день по расписанию. Импорт и экспорт в JSON.
- Утилиты. «Приложения» (открыть, остановить, очистить данные, отключить, менять разрешения), «Монитор» (CPU, память, swap, батарея, топ процессов), «Скриншот и запись», «Не выключать экран» и «Перезагрузка» (обычная, bootloader или recovery).
- Dev Check. Сведения об оборудовании, системе, батарее, сети и приложениях. Работает даже без подключения.
ADB Kit бесплатный, с рекламой. ADB Kit Pro (на месяц, год или навсегда) только убирает рекламу, все функции доступны и без него.
Чем это отличается от ADB с компьютера
| ADB с компьютера | ADB на самом телефоне | |
|---|---|---|
| Нужен ПК | Да | Нет |
| Права shell | Пользователь shell | Тот же пользователь shell |
| Root | Не нужен | Не нужен |
adb install файла с ПК, adb pull на ПК | Да | Файлы передаются через «Импорт файла» и «Экспорт файла» в терминале |
| fastboot | Да, по кабелю | Нет: в режиме fastboot adb не работает |
| Android 10 и старше | Работает по USB | Только после adb tcpip 5555 с компьютера |
Главное ограничение: всё, что требует root (чтение чужих данных в /data, изменение системного раздела), недоступно ни с ПК, ни с телефона. adb shell это повышенные права, но не root.
Если у вас Android 10 или старше
«Отладки по Wi-Fi» там нет, поэтому один раз всё-таки понадобится компьютер. Подключите телефон по USB и выполните:
adb tcpip 5555Затем в ADB Kit откройте «Настройки» › «Подключение по IP-адресу» и подключитесь к 127.0.0.1:5555. Режим держится до перезагрузки телефона, после неё команду придётся повторить. Разница между способами разобрана в статье adb tcpip или отладка по Wi-Fi.
Частые проблемы
- Переключатель «Отладка по Wi-Fi» не включается. Телефон не подключён к Wi-Fi. Мобильный интернет не подходит. Подробнее в статье отладка по Wi-Fi отключается сама.
- «Неверный код» или сопряжение не проходит. Код живёт, пока открыто окно сопряжения. Откройте его заново и введите новый код. Все варианты ошибок в статье не удалось выполнить сопряжение.
- После перезагрузки всё отвалилось. Это нормально: Android обычно выключает «Отладку по Wi-Fi» при перезагрузке. Включите её снова, повторное сопряжение не нужно.
- На Xiaomi, Redmi и POCO не работают ввод и смена разрешений. Включите ещё «Отладку по USB (Настройки безопасности)», см. статью про Xiaomi.
Безопасно ли это
Подключение не покидает телефон: ADB Kit общается с adbd этого же телефона, никакого сервера посередине нет. «Отладка по Wi-Fi» шифрует соединение и пускает только сопряжённые устройства. Помните, что команды shell могут удалить или отключить приложения и стереть их данные, поэтому проверяйте, что запускаете. Когда «Отладка по Wi-Fi» не нужна, её можно выключить: сопряжение от этого не пропадёт.