Найти в Дзене
Никита Кудрин

Как пользоваться ADB? Подробная инструкция.

Что такое ADB?
Что такое ADB?

ADB (Android Debug Bridge - Отладочный мост Android) - инструмент, который устанавливается вместе с Android-SDK и позволяет управлять устройством на базе ОС Android.
Работает на всех Android-устройствах, где данный функционал не был намеренно заблокирован производителем.
Здесь и далее: PC - ПК, компьютер к которому подключено устройство.
ADB - консольное приложение для PC, с помощью которого производится отладка Android устройств, в том числе и эмуляторов.
Работает по принципу клиент-сервер. При первом запуске ADB с любой командой создается сервер в виде системной службы (демона), которая будет прослушивать все команды, посылаемые на порт 5037.
Официальная страница
ADB позволяет:

  • Посмотреть какие устройства подключены и могут работать с ADB.
  • Просматривать логи.
  • Копировать файлы с/на аппарат.
  • Устанавливать/Удалять приложения.
  • Удалять (очищать) раздел data.
  • Прошивать (перезаписывать) раздел data.
  • Осуществлять различные скрипты управления.
  • Управлять некоторыми сетевыми параметрами.

Поставляется ADB в составе инструментария разработчика Андроид (Android SDK), который, в свою очередь входит в состав Android Studio.

Распаковка:

Распаковываем архив (рекомендуется распаковывать в корень диска или в другую папку, не содержащую русских букв в пути, ). Например: c:\adb\ или a:\adb\
В итоге должна получиться папка в корне диска с содержимым:
#:\adb\adb.exe - непосредственно сам ADB, с которым будем работать.
#:\adb\AdbWinApi.dll - библиотека для работы ADB.
#:\adb\AdbWinUsbApi.dll - библиотека для работы ADB.
#:\adb\fastboot.exe - управление устройством переведенным в режим fastboot.
Инструкции по установке (Windows, OS X и Linux)
Настройки соединения, устройства. Драйверы.
Настраиваем телефон.
Для этого перейдите в: "Настройки" - "О телефоне" - 7 раз нажмите на номер сборки. В настройках для разработчиков активируйте отладку по USB.
При подключении USB-кабеля выбираем Только зарядка.
Проверяем соединение на компьютере.
Создаем в распакованной папке adb файл devices.cmd (проверяем что .cmd это расширение файла а не его имя) и пишем туда:

echo off
adb devices
pause

Запускаем созданный файл. Если все сделано правильно, будут видны строки:

D:\adb>devices.cmd
adb devices
List of devices attached
HT16GV402012 device
D:\adb>pause
Для продолжения нажмите любую клавишу . . .

Если что-то неправильно, то в списке подключенных устройств (List of devices attached) будет пусто.

Как использовать:

Так как ADB - консольное приложение, работать в Windows с ним не очень комфортно.
Есть несколько способов работы с консолью.
Например, с помощью cmd.exe (Обработчика команд Windows).
Запускается любым из следующих способов:
1.
Пуск -> Выполнить -> сmd -> Ввод (Enter).
2. Сочетанием клавиш
WIN+R -> сmd -> Ввод (Enter).
3. В папке Windows\System32 находим файл cmd.exe и запускаем его.
Попадаем в обработчик.
Переходим в каталог ADB командой: cd c:\adb\.
Далее работаем посредством команд ADB.

Команды ADB:

Скрытые команды ADB
adb -d Команда посылается только на устройство подключенное через USB.
Внимание: Выдаст ошибку, если подключено больше одного устройства.

adb -e Команда посылается на устройство в эмуляторе.
Внимание: Выдаст ошибку, если подключено больше одного эмулятора.

adb -s <серийный_номер_устройства> Команда посылается на устройство с указанным серийным номером:

adb -p <имя устройства или путь> Команда посылается на устройство с указанным именем:
Если ключ -p не указан, используется значение переменной ANDROID_PRODUCT_OUT.

adb devices Список всех подсоединенных устройств.

adb connect <хост>[:<порт>] Подсоединиться к андроид хосту по протококу TCP/IP через порт 5555 (по умолчанию, если не задан).

adb disconnect [<хост>[:<порт>]] Отсоединиться от андроид подключенного через TCP/IP порт 5555 (по умолчанию, если не задан).
Если не задан ни один параметр, отключиться от всех активных соединений.

adb push <путь на PC> <путь на андроид> Копировать файл/папку PC->девайс.

adb pull <путь на андроид> [<путь на PC>] Копировать файл/папку девайс->PC.

adb sync [<каталог>] Копировать PC->девайс только новые файлы.
Ключи:
-l Не копировать, только создать список.

adb shell Запуск упрощенного unix shell.
Примеры использования

adb emu <команда> Послать команду в консоль эмулятора

adb install [-l] [-r] [-s] <название_приложения.apk> Послать приложение на устройство и установить его.
Пример: adb install c:/adb/app/autostarts.apk Установить файл autostarts.apk лежащий в папке /adb/app/ на диске с:
Ключи:
-l Блокировка приложения
-r Переустановить приложение, с сохранением данных
-s Установить приложение на карту памяти

adb uninstall [-k] <название_приложения.apk> Удаление приложения с устройства.
Ключи:
-k Не удалять сохраненные данные приложения и пользователя.

adb wait-for-device Ждать подключения устройства.

adb start-server Запустить службу/демон.

adb kill-server Остановить службу/демон.

adb get-state Получить статус:
offline Выключен.
bootloader В режиме начальной загрузки.
device В режиме работы.

adb get-serialno Получить серийный номер.

adb status-window Непрерывный опрос состояния.

adb remount Перемонтировать для записи. Требуется для работы скриптов, которые изменяют данные на.


adb reboot bootloader Перезагрузка в режим bootloader.

adb reboot recovery Перезагрузка в режим recovery.

adb root Перезапуск демона с правами root

adb usb Перезапуск демона, прослушивающего USB.

adb tcpip <порт> Перезапуск демона, прослушивающего порт TCP.

adb ppp <tty> [параметры] Запуск службы через USB.
Note: you should not automatically start a PPP connection. <tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
Параметры: defaultroute debug dump local notty usepeerdns

источник