Команды ADB и Fastboot: полное руководство с примерами

Команда adb devices возвращает пустой список, хотя смартфон подключён кабелем — чаще всего причина не в самой утилите, а в отключённой отладке по USB, неподтверждённом RSA-ключе на экране телефона или отсутствующем драйвере в Windows. Проверка начинается именно с этой команды: она показывает, видит ли компьютер устройство, прежде чем вы перейдёте к прошивке, удалению системных приложений или разблокировке загрузчика.

ADB (Android Debug Bridge) и Fastboot — два официальных инструмента из состава Android SDK Platform-Tools от Google. ADB работает, когда Android загружен (или устройство находится в режиме recovery), а Fastboot — когда аппарат переведён в режим загрузчика. Путать их нельзя: команды одной утилиты не выполняются в среде другой, и это одна из самых частых ошибок новичков.

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

Установка Platform-Tools и подготовка смартфона

Утилиты распространяются бесплатно в составе пакета SDK Platform-Tools, который Google публикует для Windows, macOS и Linux. Достаточно скачать архив с официального сайта для разработчиков Android и распаковать его в отдельную папку — установка не требуется. Запуск команд выполняется из командной строки, открытой в этой папке.

Чтобы ADB заработал, на смартфоне нужно активировать отладку по USB. Общий порядок такой:

  • 🔓 Откройте «Настройки» → «О телефоне» и несколько раз нажмите на пункт «Номер сборки», пока не появится сообщение о разблокировке режима разработчика.
  • ⚙️ Перейдите в раздел «Для разработчиков» (его расположение зависит от оболочки — ищите через поиск настроек) и включите «Отладка по USB».
  • 🔌 Подключите устройство кабелем к ПК и на экране смартфона подтвердите запрос «Разрешить отладку по USB?», при желании отметив пункт «Всегда разрешать с этого компьютера».
  • 💻 Проверьте связь командой adb devices — устройство должно отображаться со статусом device, а не unauthorized.

Для Fastboot отладка по USB не обязательна, но потребуется перевести аппарат в режим загрузчика — либо комбинацией кнопок (зависит от модели, сверяйтесь с инструкцией производителя), либо командой adb reboot bootloader из уже работающего ADB.

Базовые команды ADB: диагностика и управление устройством

Начинать работу стоит с команд, которые ничего не изменяют в системе, а только возвращают информацию. Они безопасны и помогают убедиться, что связь установлена корректно.

adb devices

adb get-serialno

adb shell getprop ro.product.model

adb shell getprop ro.build.version.release

Первая команда выводит список подключённых устройств, остальные — серийный номер, модель и версию Android. Если вместо серийника видите unauthorized, разблокируйте экран смартфона и подтвердите запрос на отладку.

Следующая группа — команды управления питанием и режимами. Они часто нужны перед прошивкой или диагностикой:

adb reboot

adb reboot bootloader

adb reboot recovery

Здесь всё прямолинейно: обычная перезагрузка, переход в fastboot-режим и перезагрузка в рекавери соответственно. Если система зависла и не реагирует на кнопки, но ADB-соединение ещё живо, adb reboot — самый мягкий способ перезапуска.

📊 Для какой задачи вы чаще всего используете ADB или Fastboot?
Удаление предустановленных приложений
Прошивка или обновление системы
Разблокировка загрузчика
Просто изучаю возможности

Установка и удаление приложений через ADB

Одна из самых востребованных функций — установка APK-файлов и удаление предустановленных приложений, которые система не даёт убрать штатно. Установка выполняется одной командой:

adb install app.apk

adb install -r app.apk

Ключ -r означает переустановку с сохранением данных. Путь к файлу можно не прописывать вручную — достаточно перетащить APK мышью в окно терминала после набранной команды.

С удалением системных приложений ситуация тоньше. Удалить их полностью без root-прав нельзя, но можно убрать для текущего пользователя:

adb shell pm list packages

adb shell pm uninstall -k --user 0 имя.пакета

Первая команда выводит список всех пакетов, вторая удаляет указанный. Параметр -k сохраняет данные, а --user 0 указывает основного пользователя. Вернуть пакет можно командой adb shell cmd package install-existing имя.пакета.

⚠️ Внимание: не удаляйте пакеты, назначение которых вам неизвестно. Удаление системных компонентов (например, отвечающих за звонки, настройки или установку приложений) может привести к неработоспособности устройства вплоть до необходимости перепрошивки. Перед удалением проверьте, что делает конкретный пакет.

☑️ Безопасное удаление приложения через ADB

Выполнено: 0 / 5

Передача файлов и работа с оболочкой shell

ADB умеет копировать файлы между компьютером и смартфоном без включения MTP и без сторонних программ. Это удобно, когда экран разбит или система загружается нестабильно:

adb push C:\file.zip /sdcard/Download/

adb pull /sdcard/DCIM/ C:\backup\

Команда push отправляет файл с ПК на устройство, pull — забирает обратно. Путь /sdcard/ — это внутренняя память, доступная без root-прав.

Команда adb shell открывает терминал внутри самого Android, где доступны стандартные Linux-утилиты: ls, cd, cat, pm, am и другие. Например, adb shell dumpsys battery показывает состояние аккумулятора, а adb shell settings list system — системные настройки. Это мощный инструмент диагностики, но команды внутри shell выполняются с правами системного процесса, поэтому вводить их стоит осознанно.

Полезные команды диагностики через adb shell

dumpsys battery — уровень заряда и статус батареи; dumpsys meminfo — использование памяти; logcat — системный журнал в реальном времени (остановка — Ctrl+C); wm size — разрешение экрана; getprop — все системные свойства устройства.

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

Fastboot работает только когда устройство находится в режиме загрузчика. Проверка связи выполняется аналогично ADB:

fastboot devices

fastboot reboot

Если fastboot devices ничего не возвращает, хотя на экране смартфона виден режим fastboot, в Windows обычно требуется установить драйвер загрузчика (часто это Android Bootloader Interface). В Linux проблема чаще решается запуском с правами root или настройкой udev-правил.

Ключевые операции fastboot связаны с разделами памяти устройства:

КомандаНазначениеРиск
fastboot devicesСписок устройств в режиме загрузчикаНет
fastboot rebootПерезагрузка в системуНет
fastboot flashing unlockРазблокировка загрузчикаВысокий: стирает все данные
fastboot flash boot boot.imgПрошивка раздела bootВысокий при неверном файле
fastboot erase cacheОчистка раздела кэшаНизкий

Разблокировка загрузчика почти всегда приводит к полному стиранию данных устройства (factory reset) — это штатный механизм безопасности Android, а не сбой. Команда разблокировки также отличается у разных производителей: на многих устройствах это fastboot flashing unlock, на части старых моделей — fastboot oem unlock, а некоторые бренды требуют предварительного получения кода разблокировки на своём сайте. Точную процедуру нужно сверять с документацией производителя конкретной модели.

⚠️ Внимание: прошивайте через fastboot flash только те образы, которые предназначены именно для вашей модели и ревизии устройства. Образ от другой модификации может привести к состоянию «кирпича», когда аппарат перестаёт загружаться и восстановление потребует сервисного оборудования.

Типичные ошибки и их решение

Даже при правильных командах утилиты нередко отказываются работать. Разберём самые частые ситуации.

  • 🔍 «adb не является внутренней или внешней командой» — терминал открыт не в папке Platform-Tools. Перейдите в неё командой cd или добавьте папку в переменную PATH.
  • 📵 Пустой вывод adb devices — проверьте кабель (часть кабелей передаёт только питание), смените USB-порт, убедитесь, что отладка включена.
  • 🔐 Статус unauthorized — на смартфоне не подтверждён запрос. Отключите и снова подключите кабель, отзовите авторизации в настройках разработчика и повторите.
  • fastboot завис на «waiting for device» — в Windows почти всегда это проблема драйвера; проверьте Диспетчер устройств на наличие неопознанного устройства.
  • 🚫 FAILED (remote: not allowed) — загрузчик заблокирован, операции flash и erase недоступны до разблокировки.

Если одна и та же команда работает на одном компьютере и не работает на другом, сравните версии утилит командой adb version — устаревшие сборки Platform-Tools из сторонних «установщиков ADB» иногда несовместимы с новыми устройствами. Надёжнее всегда использовать свежий официальный пакет от Google.

Меры предосторожности перед прошивкой и разблокировкой

Команды fastboot изменяют содержимое разделов памяти, поэтому цена ошибки здесь выше, чем при работе с ADB. Перед любыми операциями с прошивкой убедитесь, что батарея заряжена, файлы образов скачаны из источника, которому вы доверяете, и предназначены строго для вашей модели.

Сделайте резервную копию данных заранее: разблокировка загрузчика и ряд операций прошивки стирают пользовательский раздел. Учтите также, что разблокировка загрузчика и модификация системы могут влиять на гарантию, работу банковских приложений и сертификацию устройства — это зависит от политики производителя и региона.

⚠️ Внимание: во время выполнения команд fastboot flash не отключайте кабель и не закрывайте терминал до появления сообщения «Finished». Прерывание записи раздела — одна из типичных причин невозможности загрузки устройства.

Часто задаваемые вопросы

Чем ADB отличается от Fastboot?

ADB работает, когда Android загружен или устройство находится в recovery, и предназначен для отладки, установки приложений и передачи файлов. Fastboot работает в режиме загрузчика, до старта системы, и служит для прошивки разделов и разблокировки загрузчика. Это независимые протоколы: команды одного не выполняются в среде другого.

Нужен ли root для использования ADB?

Нет. Большинство команд ADB, включая установку и удаление приложений для текущего пользователя, передачу файлов и перезагрузку в разные режимы, работают на устройстве без root-прав. Root расширяет возможности внутри adb shell, но не является обязательным условием.

Почему fastboot devices не видит телефон, а adb devices видит?

Это нормально, если смартфон загружен в систему: в этом состоянии доступен только ADB. Для fastboot устройство нужно перезагрузить в режим загрузчика командой adb reboot bootloader или комбинацией кнопок. Если и после этого устройство не определяется, проверьте драйвер загрузчика в Диспетчере устройств Windows.

Удалятся ли данные при разблокировке загрузчика?

На подавляющем большинстве устройств — да: разблокировка принудительно выполняет сброс к заводским настройкам из соображений безопасности. Перед выполнением команды разблокировки сохраните все важные данные на компьютер или в облако.

Можно ли вернуть удалённое через ADB системное приложение?

Да, если оно было удалено только для пользователя 0. Команда adb shell cmd package install-existing имя.пакета восстанавливает пакет без перепрошивки. Полный сброс настроек также возвращает все системные приложения.