Основные команды ADB и Fastboot
Tags: android, adb, fastboot
Published: 2020-06-06 13:23:12

Собрал основные команды ADB и Fastboot в одном посте. Каждая команда сопровождается кратким описанием.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/3o70zlhq439uuu4wtiji.png)

##Команды ADB

* `adb devices` – вывод списка подключенных устройств;
* `adb reboot` – перезагрузка устройства;
* `adb reboot recovery` – перезагрузка устройства в режим восстановления (recovery);
* `adb reboot bootloader` – перезагрузка устройства в режим fastboot для дальнейшего выполнения fastboot-команд;
* `adb install app.apk` – установка приложения на карту памяти (необходимо предварительно загрузить .apk-файл в папку с ADB либо указать полный путь к нему);
* `adb install -f app.apk` – установка приложения во внутреннюю память;
* `adb install -t app.apk` – установка приложения для тестирования;
* `adb install -r app.apk` – переустановка приложения с сохранением пользовательских данных;
* `adb uninstall com.app.example` – удаление приложения;
* `adb shell` – вызов консоли Android (shell) для выполнения Linux-команд;
* `adb shell screencap /sdcard/screenshot.png` – создание скриншота (больше подробностей в [написанном мною руководстве](https://4idroid.com/screenshot-samsung-galaxy/) по созданию скриншотов на смартфонах Samsung);
* `adb shell screenrecord /sdcard/video.mp4` – [запись скринкаста](https://4idroid.com/kak-zapisat-video-s-ekrana-android-smartfona-ili-plansheta/) (захват изображения с экрана);
* `adb shell dumpsys package com.app.example` – вывод информации о приложении;
* `adb shell pm list packages` – вывод списка установленных приложений;
* `adb shell pm grant com.app.example android.permission.SEND_SMS` – [выдача разрешения приложению](https://developer.android.com/guide/topics/manifest/uses-permission-element) (в конкретном случае на отправку сообщений);
* `adb shell pm revoke com.app.example android.permission.CAMERA` – блокировка доступа приложению (в конкретном случае к камере);
* `adb backup -apk -shared -all -f C:\backup.ab` – [создание резервной копии данных](https://9to5google.com/2017/11/04/how-to-backup-restore-android-device-data-android-basics/), включая установленные приложения и файлы, хранящиеся на карте памяти (имя файла создаваемого бэкапа и путь к нему можно изменить);
* `adb restore C:\backup.ab` – восстановление данных из созданной резервной копии;
* `adb tcpip 5555` – установка соединения по протоколу TCP/IP через порт 5555;
* `adb connect 192.168.0.100` – подключение к устройству (узнать IP-адрес устройства можно в настройках в разделе «О телефоне»);
* `adb disconnect 192.168.0.100` – отключение от устройства;
* `adb sideload /sdcard/firmware.zip` – установка прошивки, когда устройство загружено в recovery;
* `adb push C:\app.apk /sdcard/Download` – отправка файла с компьютера на смартфон (возможна отправка каталогов);
* `adb pull /sdcard/video.mp4 C:\Users\Overclocker\Downloads` – копирование файла с компьютера на смартфон (возможно копирование каталогов);
* `adb start-server` – перезапуск демона;
* `adb kill-server` – остановка демона.

##Команды Fastboot

* `fastboot devices` – вывод списка подключенных устройств, загруженных в режиме fastboot;
* `fastboot reboot` – перезагрузка устройства, запуск Android;
* `fastboot reboot recovery` – перезагрузка устройства в режим восстановления (recovery);
* `fastboot oem device-info` – проверка состояния загрузчика;
* `fastboot oem unlock` – [разблокировка загрузчика](https://source.android.com/setup/build/running#unlocking-recent-devices) на старых устройствах, например, на всех моделях Google Nexus;
* `fastboot flashing unlock` – разблокировка загрузчика на новых устройствах, например, на всех моделях Google Pixel;
* `fastboot oem unlock ****************` – разблокировка загрузчика на устройствах, которые требуют прохождения процедуры получения кода. К таким устройствам относятся смартфоны и планшеты Xiaomi, Sony, HTC, Huawei, Honor и многих других производителей. Количество символов в коде подтверждения может отличаться;
* `fastboot oem lock` – блокировка загрузчика на старых устройствах;
* `fastboot flashing lock` – блокировка загрузчика на новых устройствах;
* `fastboot oem relock ****************` – блокировка загрузчика на устройствах, которые требуют прохождения процедуры получения кода;
* `fastboot getvar all` – вывод технической информации об устройстве, которая включает данные об IMEI, серийном номере, версии загрузчика, состоянии батареи и прочие сведения.

###Очистка разделов перед прошивкой:

* `fastboot erase system`;
* `fastboot erase userdata`;
* `fastboot erase recovery`;
* `fastboot erase boot`;
* `fastboot erase cache`;
* `fastboot erase radio`;
* `fastboot -w` – сброс настроек, очистка раздела */data*.

###Прошивка разделов:

* `fastboot flash system system-filename.img`;
* `fastboot flash userdata userdata-filename.img`;
* `fastboot flash recovery recovery-filename.img`;
* `fastboot flash boot boot-filename.img`;
* `fastboot flash cache cache-filename.img`;
* `fastboot flash radio radio-filename.img`; 
* `flash-all` – [прошивка всех разделов](https://source.android.com/setup/build/running#flashing-a-device) (необходимо предварительно загрузить файлы прошивки в папку с Fastboot, при этом среди них должен быть .bat-файл с названием *flash-all*);
* `fastboot flashall` – аналогичная предыдущей команда;
* `fastboot update firmware-filename.zip` – установка прошивки в формате .zip.