adb - справочное руководство, опции, примеры команд


ИМЯ

adb - Мост отладки Android

СИНТАКСИС

adb [-d|-e|-s serialNumber] command

ОПИСАНИЕ

ВНИМАНИЕ: Это руководство может быть устаревшим, пожалуйста, обратитесь к официальной документации.

Android Debug Bridge (adb) – это универсальный инструмент командной строки, который позволяет обмениваться данными с экземпляром эмулятора или подключенным устройством на базе Android. Это клиент-серверная программа, состоящая из трех компонентов:

  • Клиент, который отправляет команды. Клиент работает на вашей машине разработки. Вы можете вызвать клиента из оболочки, введя команду adb. Другие инструменты Android, такие как DDMS, также создают клиенты adb.

  • Демон, который запускает команды на устройстве. Демон работает как фоновый процесс на каждом экземпляре эмулятора или устройства.

  • Сервер, который управляет связью между клиентом и демоном. Сервер работает как фоновый процесс на вашей машине разработки.

Если запущен только один эмулятор или подключено только одно устройство, команда adb отправляется на это устройство по умолчанию. Если запущено несколько эмуляторов и/или подключено несколько устройств, необходимо использовать параметр -d, -e или -s для укажите целевое устройство, на которое должна быть направлена команда.

ПАРАМЕТРЫ

-a

Предписывает adb прослушивать соединение на всех интерфейсах.

-d

Направляет команду на единственное подключенное USB-устройство. Возвращает ошибку, если присутствует более одного USB-устройства.

-e

Направляет команду единственному запущенному эмулятору. Возвращает ошибку, если запущено более одного эмулятора.

-s specific device

Направляет команду на устройство или эмулятор с заданным серийным номером или спецификатором. Переопределяет переменную среды ANDROID_SERIAL.

-p product name or path

Простое название продукта, например sooner, или относительный/абсолютный путь к выходному каталогу продукта, например out/target/product/sooner. Если -p не указан, используется переменная среды ANDROID_PRODUCT_OUT, которая должна быть абсолютным путем.

-H

Имя узла сервера adb (по умолчанию: localhost)

-P

Порт сервера adb (по умолчанию: 5037)

КОМАНДЫ

adb devices [-l]

Список всех подключенных устройств. -l также отображает квалификаторы устройств.

adb connect host[:port]

Подключиться к устройству через TCP/IP. Порт 5555 используется по умолчанию, если номер порта не указан.

adb disconnect [host[:port]]

Отключиться от TCP/IP-устройства. Порт 5555 используется по умолчанию, если номер порта не указан. Использование этой команды без дополнительных аргументов приведет к отключению от всех подключенных устройств TCP/IP.

Команды устройства

adb push local... remote

Скопируйте файл/каталог на устройство.

adb pull [-a] remote [local]

Скопируйте файл/каталог с устройства. -a означает копирование временной метки и режима.

adb sync [-l] [directory]

Копировать host->device только в случае изменения. -l означает перечислить, но не копировать.

Если каталог не указан, /system, /vendor (если есть), /oem (если есть) и разделы /data будут обновлены.

Если это система, поставщик, производитель или данные, обновляется только соответствующий раздел.

adb shell [-e escape] [-n] [-T|-t] [-x] [command]

Запустить команду удаленной оболочки (интерактивная оболочка, если команда не указана)

  • -e: выбрать escape-символ или нет; по умолчанию ~

  • -n: не читать со стандартного ввода

  • -T: отключить выделение PTY

  • -t: Принудительное выделение PTY

  • -x: отключить коды удаленного выхода и разделение stdout/stderr.

adb emu command

Запустить консольную команду эмулятора

adb logcat [filter-spec]

Просмотр журнала устройства.

adb forward --list

Перечислите все прямые соединения сокетов. Формат представляет собой список строк в следующем формате: serial " " local " " remote ""

adb forward local remote

Прямые сокетные соединения.

Форвардные спецификации являются одними из:

  • TCP:порт

  • localabstract:имя сокета домена unix

  • localreserved:имя сокета домена unix

  • localfilesystem:имя сокета домена unix

  • dev:имя устройства персонажа

  • jdwp:PID процесса (только удаленно)

adb forward --no-rebind local remote

То же, что и "adb forward local remote", но не работает, если local уже переадресован

adb forward --remove local

Удалить конкретное прямое соединение сокета.

adb forward --remove-all

Удалите все прямые соединения сокетов.

adb reverse --list

Список всех обратных подключений сокетов от устройства.

adb reverse remote local

Обратное подключение сокетов.

Обратные спецификации являются одним из:

  • TCP:порт

  • localabstract:имя сокета домена unix

  • localreserved:имя сокета домена unix

  • localfilesystem:имя сокета домена unix

adb reverse --no-rebind remote local

То же, что и «adb reverse remote local», но не работает, если remote уже реверсировано.

adb reverse --remove remote

Удалить конкретное обратное соединение сокета.

adb reverse --remove-all

Удалите все обратные соединения сокетов с устройства.

adb jdwp

Список PID процессов, в которых размещается транспорт JDWP.

adb install [-lrtsdg] file

Отправьте этот файл пакета на устройство и установите его.

  • -l: блокировка вперед.

  • -r: заменить существующее приложение.

  • -t: разрешить тестовые пакеты.

  • -s: установить приложение на SD-карту.

  • -d: Разрешить понижение кода версии (только для отлаживаемых пакетов).

  • -g: предоставить все разрешения во время выполнения.

adb install-multiple [-lrtsdpg] file...

Отправьте этот файл пакета на устройство и установите его.

  • -l: блокировка вперед.

  • -r: заменить существующее приложение.

  • -t: разрешить тестовые пакеты.

  • -s: установить приложение на SD-карту.

  • -d: Разрешить понижение кода версии (только для отлаживаемых пакетов).

  • -p: Частичная установка приложения.

  • -g: предоставить все разрешения во время выполнения.

adb uninstall [-k] package

Удалите этот пакет приложения с устройства. -k означает сохранить каталоги данных и кеша.

adb bugreport [zipfile]

Вернуть всю информацию с устройства, которая должна быть включена в отчет об ошибке.

adb backup [-f file] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all] [-system|-nosystem] [packages...]

Запишите архив данных устройства в файл. Если параметр -f не указан, данные записываются в backup.ab в текущем каталоге.

-apk | -noapk включить/выключить резервное копирование самих .apk в архив; по умолчанию нет apk.

-obb | -noobb включить/отключить резервное копирование любых установленных файлов расширения apk (также известных как .obb), связанных с каждым приложением; по умолчанию нубб.

-общий | -noshared включить/отключить резервное копирование общего хранилища устройства/содержимого SD-карты; по умолчанию нет общего доступа.

-all означает резервное копирование всех установленных приложений.

-система | -nosystem переключает, включает ли -all автоматически системные приложения; по умолчанию включены системные приложения.

packages... – это список приложений, для которых необходимо выполнить резервное копирование. Если переданы флаги -all или -shared, список пакетов не является обязательным. Приложения, явно заданные в командной строке, будут включены, даже если -nosystem обычно приводит к их исключению.

adb restore file

Восстановите содержимое устройства из архива резервной копии file.

adb disable-verity

Отключите проверку dm-verity в сборках USERDEBUG.

adb enable-verity

Повторно включите проверку dm-verity для сборок USERDEBUG.

adb keygen file

Сгенерируйте открытый/закрытый ключ adb. Закрытый ключ хранится в файле, а открытый ключ хранится в файле.pub. Любые существующие файлы перезаписываются.

adb help

Показать справочное сообщение.

adb version

Показать номер версии.

Сценарии

adb wait-for-[-transport]-state

Дождитесь, пока устройство перейдет в заданное состояние: устройство, восстановление, неопубликованная загрузка или загрузчик. транспорт: usb, местный или любой (по умолчанию=любой)

adb start-server

Убедитесь, что сервер работает.

adb kill-server

Убейте сервер, если он запущен.

adb get-state

Печать: в автономном режиме | загрузчик | устройство

adb get-serialno

Выводит: серийный-номер.

adb get-devpath

Выводит: путь-устройства.

adb remount

Перемонтирует разделы /system, /vendor (если есть) и /oem (если есть) на устройстве для чтения и записи.

adb reboot [bootloader|recovery]

Перезагружает устройство, опционально в загрузчик или программу восстановления.

adb reboot sideload

Перезагружает устройство в режим боковой загрузки в программе восстановления (требуется adb root).

adb reboot sideload-auto-reboot

Перезагружается в режим боковой загрузки, а затем автоматически перезагружается после боковой загрузки независимо от результата.

adb sideload file

Загружает данный пакет.

adb root

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

adb unroot

Перезапускает демон adbd без прав root.

adb usb

Перезапускает демон adbd, прослушивающий USB.

adb tcpip port

Перезапускает демон adbd, прослушивающий TCP на указанном порту.

Сеть

adb ppp tty [parameters]

Запустите PPP через USB.

параметры: например. локальный дамп отладки defaultroute notty usepeerdns

Примечание: вы не должны автоматически запускать соединение PPP. tty относится к tty для потока PPP. Например. разработчик:/dev/omap_csmi_tty1

Внутренняя отладка

adb reconnect

Удалите текущее соединение со стороны хоста и переподключите его.

adb reconnect device

Удалите текущее соединение со стороны устройства и переподключите его.

ПЕРЕМЕННЫЕ СРЕДЫ

ADB_TRACE

Печать отладочной информации. Разделенный запятыми список следующих значений: 1 или все, adb, сокеты, пакеты, rwx, usb, sync, sysdeps, транспорт, jdwp

ANDROID_SERIAL

Серийный номер для подключения. -s имеет приоритет над этим, если задано.

ANDROID_LOG_TAGS

При использовании с параметром logcat печатаются только эти теги отладки.

СМОТРИТЕ ТАКЖЕ

https://developer.android.com/tools/help/adb.html

АВТОРЫ

Проект Android с открытым исходным кодом.