ADT
Aurora Debug Tool (ADT) — это легковесная консольная утилита для отладки, тестирования и управления устройствами и эмуляторами под управлением ОС Аврора.
Содержание:
- Команды для работы с ADT
- Работа с физическими и виртуальными устройствами
- Вывод списка устройств
- Выполнение команды на устройстве
- Выбор устройства по умолчанию
- Развёртывание RPM-пакетов на устройстве
- Отмена развёртывания RPM-пакетов на устройстве
- Копирование файлов или директорий
- Добавление нового устройства
- Получение статуса устройства
- Удаление устройства
- Управление приложениями на устройстве
- Работа с эмуляторами
- Работа с физическими и виртуальными устройствами
Команды для работы с ADT
Если устройство зарегистрировано, то его можно указать по ID или имени с помощью опций -d, --device.
Регистрировать можно физические устройства и эмуляторы.
Если устройство не зарегистрировано и не находится в списке известных устройств adt (т.е. анонимно),
то его можно указать с помощью опций --ip, --port и --ssh-key.
Большинство команд группы adt device поддерживают такой подход к указанию устройства. Команды группы adt emulator не поддерживают анонимные устройства и используются только для эмуляторов.
Управление физическими и виртуальными устройствами
adt device предоставляет подкоманды для управления физическими
и виртуальными устройствами на базе ОС Аврора.
Вывод списка устройств
adt device list [ОПЦИИ]
Выводит список зарегистрированных устройств. Для всех устройств команда выводит их порядковый номер в списке. Для эмуляторов выводится IP и SSH-порт, для физических устройств — IP и архитектуру.
Опции:
-eили--emulators-only— выводит только эмуляторы. Несовместима с опцией-E.-Eили--no-emulators— выводит только физические устройства. Несовместима с опцией-e.
Примеры:
-
Вывод всех устройств:
$ adt device list #0 emulator ip: localhost ssh_port: 2223 #1 device ip: 192.168.2.15 arch: armv7hl -
Вывод только эмуляторов:
$ adt device list --emulators-only #0 emulator ip: localhost ssh_port: 2223 -
Вывод только физических устройств:
$ adt device list --no-emulators #1 device ip: 192.168.2.15 arch: armv7hl
Выполнение команды на устройстве
adt device exec [ОПЦИИ] [[--] КОМАНДА]
Выполняет команду на выбранном устройстве.
Необязательный разделитель -- можно использовать, чтобы отделить ОПЦИИ от аргументов КОМАНДЫ,
гарантируя их точную передачу.
Если в качестве устройства выбран эмулятор, то он должен быть запущен.
Позиционные аргументы:
КОМАНДА— команда для выполнения (включая её аргументы). ЕслиКОМАНДАне указана, на устройстве запускается интерактивная оболочка.
Опции:
-d УСТРОЙСТВОили--device УСТРОЙСТВО— ID или имя устройства для использования. Также может быть задано через переменную окруженияADT_DEFAULT_DEVICE. Несовместима с опциями--ip,--portи--ssh-key.--ip IP_УСТРОЙСТВА— IP устройства для подключения. Используется вместе с опцией--port. Исключает использование опции--device.--port ПОРТ_УСТРОЙСТВА— порт устройства для подключения. По умолчанию имеет значение22. Используется вместе с опцией--ip. Несовместима с опцией--device.--ssh-key SSH_КЛЮЧ— ssh-ключ устройства для подключения. Путь к ssh-ключу хоста. Используется вместе с опциями--ipи--port. Несовместима с опцией--device.-t— принудительно выделяет псевдотерминал.
Примеры:
-
Выполнение команды на устройстве по умолчанию:
adt device exec ls -la -
Выполнение команды на устройстве из списка устройств:
adt device exec -d "emulator AuroraOS-5.2.0" -- ls -la -
Выполнение команды на неизвестном устройстве, заданном параметрами:
adt device exec --ip 192.168.2.15 --port 2222 --ssh-key ~/.ssh/id_rsa -- ls -la -
Запуск интерактивной оболочки:
adt device exec -
Принудительное выделение псевдотерминала:
adt device exec -d 0 -t -- vi file.txt
Выбор устройства по умолчанию
adt device select [ОПЦИИ] ID_УСТРОЙСТВА|ИМЯ_УСТРОЙСТВА
Устанавливает устройство по умолчанию для команд ADT. Устройство по умолчанию может быть указано либо по его ID, либо по имени.
Позиционные аргументы:
ID_УСТРОЙСТВАилиИМЯ_УСТРОЙСТВА— идентификатор или имя устройства, которое нужно установить в качестве устройства по умолчанию. Этот аргумент обязателен.
Пример:
-
Выбор устройства по умолчанию:
adt device select "Mashtab T1"
Развёртывание RPM-пакетов на устройстве
adt device deploy [ОПЦИИ] [--] ПАКЕТ [ПАКЕТ...]
Развёртывает один или несколько пакетов на устройстве.
Позиционные аргументы:
ПАКЕТ— валидный RPM-файл.
Опции:
-d УСТРОЙСТВОили--device УСТРОЙСТВО— ID или имя устройства для использования. Также может быть задано через переменную окруженияADT_DEFAULT_DEVICE. Несовместима с опциями--ip,--portи--ssh-key.--ip IP_УСТРОЙСТВА— IP устройства для подключения. Используется вместе с опцией--port. Исключает использование опции--device.--port ПОРТ_УСТРОЙСТВА— порт устройства для подключения. По умолчанию имеет значение22. Используется вместе с опцией--ip. Несовместима с опцией--device.--ssh-key SSH_КЛЮЧ— ssh-ключ устройства для подключения. Путь к ssh-ключу хоста. Используется вместе с опциями--ipи--port. Несовместима с опцией--device.--ignore-debug— не развёртывать пакеты с отладочными символами;-nили--dry-run— выполнить пробный запуск без фактического развёртывания пакетов;--silent— тихое развёртывание. Не требует подтверждения на устройстве.-kили--keep-user-data— сохранить пользовательские данные при повторном развёртывании.
Примечание. Переданные флаги установки применяются ко всем пакетам, перечисленным в команде.
Примеры:
-
Развёртывание одного пакета на устройстве по умолчанию:
adt device deploy ru.bestcompany.Application-0.1-1.aarch64.rpm -
Развёртывание нескольких пакетов на устройстве из списка устройств:
adt device deploy --device "Mashtab T1" ru.bestcompany.ApplicationA-0.1-1.aarch64.rpm \ ru.bestcompany.ApplicationB-0.1-1.aarch64.rpm \ ru.bestcompany.ApplicationC-0.1-1.aarch64.rpm -
Развёртывание нескольких пакетов на неизвестном устройстве, заданном параметрами:
adt device deploy --ip 192.168.2.15 --port 22 --ssh-key ~/.ssh/rsa ru.bestcompany.Application-0.1-1.aarch64.rpm
Отмена развёртывания RPM-пакетов на устройстве
adt device undeploy [ОПЦИИ] [--] ПАКЕТ [ПАКЕТ...]
Отменяет развёртывание одного или нескольких пакетов на устройстве.
ПАКЕТ — валидный RPM-файл.
Опции:
-d УСТРОЙСТВОили--device УСТРОЙСТВО— ID или имя устройства для использования. Также может быть задано через переменную окруженияADT_DEFAULT_DEVICE. Несовместима с опциями--ip,--portи--ssh-key.--ip IP_УСТРОЙСТВА— IP устройства для подключения. Используется вместе с опцией--port. Исключает использование опции--device.--port ПОРТ_УСТРОЙСТВА— порт устройства для подключения. По умолчанию имеет значение22. Используется вместе с опцией--ip. Несовместима с опцией--device.--ssh-key SSH_КЛЮЧ— ssh-ключ устройства для подключения. Путь к ssh-ключу хоста. Используется вместе с опциями--ipи--port. Несовместима с опцией--device.
Примеры:
-
Отмена развёртывания одного пакета на устройстве по умолчанию:
adt device undeploy ru.bestcompany.Application -
Отмена развёртывания нескольких пакетов на устройстве из списка устройств:
adt device undeploy --device "Mashtab T1" ru.bestcompany.ApplicationA \ ru.bestcompany.ApplicationB \ ru.bestcompany.ApplicationC -
Отмена развёртывания пакета на неизвестном устройстве, заданном параметрами:
adt device undeploy --ip 192.168.2.15 --port 22 --ssh-key ~/.ssh/rsa ru.bestcompany.Application
Копирование файлов или директорий
adt device cp ИСТОЧНИК УСТРОЙСТВО:НАЗНАЧЕНИЕ
adt device cp УСТРОЙСТВО:ИСТОЧНИК НАЗНАЧЕНИЕ
Копирует файлы или директории между хостом и устройством.
Источник и назначение указываются либо как локальный путь, либо как путь на устройстве в
формате УСТРОЙСТВО:ПУТЬ.
Позиционные аргументы:
ИСТОЧНИК— исходный путь на хосте для копирования на устройство;НАЗНАЧЕНИЕ— путь назначения на хосте для копирования с устройства;УСТРОЙСТВО:НАЗНАЧЕНИЕ— путь назначения на устройстве;УСТРОЙСТВО:ИСТОЧНИК— исходный путь на устройстве.
Если путь на устройстве не начинается с /, то путь считается относительным к /home/defaultuser.
Примеры:
-
Копирование локального файла на устройство:
adt device cp file.txt "emulator AuroraOS-5.2.0":file.txt -
Копирование директории с устройства по его ID на хост:
adt device cp 0:Pictures/ ./emulator-pictures
Добавление нового устройства
adt device add [ОПЦИИ] ИМЯ IP_АДРЕС
Добавляет устройство в конфигурацию. Устройство идентифицируется по его имени и IPv4 адресу. Дополнительные параметры позволяют указать SSH-ключ для подключения.
Опции:
--username— имя пользователя для входа. По умолчанию имеет значениеdefaultuser.--ssh-key ФАЙЛ— путь к файлу приватного SSH-ключа для аутентификации. Если приватный ключ не указан, команда предложит сгенерировать новую ключевую пару, после чего развернёт публичный ключ. При генерации ключа потребуется ввести пароль.
Позиционные аргументы:
ИМЯ— имя устройства. Этот аргумент обязателен.IP_АДРЕС— IPv4 адрес устройства. Этот аргумент обязателен.
Примеры:
-
Добавление устройства:
adt device add "Mashtab T1" 192.168.2.15 -
Добавление неизвестного устройства, заданном параметрами:
adt device add "Mashtab T1" 192.168.2.15 --username admin --ssh-key ~/.ssh/id_rsa
Получение статуса устройства
adt device status [ОПЦИИ]
Показывает статус устройства. По умолчанию используется текущее устройство.
Опции:
-d УСТРОЙСТВОили--device УСТРОЙСТВО— ID или имя устройства для использования. Также может быть задано через переменную окруженияADT_DEFAULT_DEVICE. Несовместима с опциями--ip,--portи--ssh-key.--ip IP_УСТРОЙСТВА— IP устройства для подключения. Используется вместе с опцией--port. Исключает использование опции--device.--port ПОРТ_УСТРОЙСТВА— порт устройства для подключения. По умолчанию имеет значение22. Используется вместе с опцией--ip. Несовместима с опцией--device.--ssh-key SSH_КЛЮЧ— ssh-ключ устройства для подключения. Путь к ssh-ключу хоста. Используется вместе с опциями--ipи--port. Несовместима с опцией--device.
Примеры:
-
Показать статус устройства по умолчанию:
$ adt device status emulator AuroraOS-5.2.0 is running -
Показать статус неизвестного устройства, заданном параметрами:
$ adt device status --ip 192.168.2.15 --port 22 --ssh-key ~/.ssh/rsa my-device is connected
Удаление устройства
adt device rm [ОПЦИИ] ИМЯ
Удаляет устройство из списка зарегистрированных устройств.
Позиционные аргументы:
ИМЯ— имя устройства. Значение должно быть уникальным среди всех известных устройств. Этот аргумент обязателен.
Пример:
-
Удаление устройства:
adt device rm "Mashtab T1"
Управление приложениями на устройстве
adt device app [ОПЦИИ] КОМАНДА [АРГУМЕНТЫ...]
Управляет запуском и жизненным циклом приложений на устройстве. Предоставляет подкоманды для вывода списка, запуска, остановки и отладки приложений.
Опции:
-d УСТРОЙСТВОили--device УСТРОЙСТВО— ID или имя устройства для использования. Также может быть задано через переменную окруженияADT_DEFAULT_DEVICE. Несовместима с опциями--ip,--portи--ssh-key.--ip IP_УСТРОЙСТВА— IP устройства для подключения. Используется вместе с опцией--port. Исключает использование опции--device.--port ПОРТ_УСТРОЙСТВА— порт устройства для подключения. По умолчанию имеет значение22. Используется вместе с опцией--ip. Несовместима с опцией--device.--ssh-key SSH_КЛЮЧ— ssh-ключ устройства для подключения. Путь к ssh-ключу хоста. Используется вместе с опциями--ipи--port. Несовместима с опцией--device.
Подкоманды:
list— выводит список приложений на запущенном выбранном устройстве.start [--nosandbox] ИМЯ_ПРИЛОЖЕНИЯ— запускает приложение, установленное на выбранном устройстве.ИМЯ ПРИЛОЖЕНИЯявляется обязательным аргументом. По умолчанию приложение запускается в песочнице. Следует использовать--nosandboxдля запуска приложения вне песочницы. Блокирует запуск других команд до выхода из приложения. Чтобы выйти из приложения, необходимо нажать комбинацию клавиш "Ctrl + C".stop ИМЯ_ПРИЛОЖЕНИЯ— останавливает приложение, работающее на выбранном устройстве.ИМЯ ПРИЛОЖЕНИЯявляется обязательным аргументом.debug [--nosandbox] ИМЯ_ПРИЛОЖЕНИЯ— запускает для отладки приложение, установленное на выбранном устройстве.ИМЯ ПРИЛОЖЕНИЯявляется обязательным аргументом. По умолчанию приложение запускается в песочнице. Следует использовать--nosandboxдля запуска приложения вне песочницы. Выводит порт прослушивания сервераgdbserver, случайно выбранного из диапазона 20000-200019.
Примеры:
-
Вывод запущенных приложений:
$ adt app -d mashtab-t1 list Running applications: 3 Instance Id: ru.auroraos.UiComponentGallery PID: 3183 Start reason: Manual State: Inactive Details: Uris Instance Id: ru.omp.browserpwa PID: 12669 Start reason: Manual State: Inactive Details: Uris Instance Id: ru.omp.camera PID: 3254 Start reason: Manual State: Inactive Details: Uris Running services: 0 -
Запуск приложения на устройстве по умолчанию:
adt device app start ru.bestcompany.Application -
Остановка приложения на устройстве по умолчанию:
adt device app stop ru.bestcompany.Application -
Отладка приложения:
adt device app --device "emulator AuroraOS-5.2.0" debug ru.bestcompany.Application -
Запуск приложения на неизвестном устройстве, заданном параметрами:
adt device app --ip 192.168.2.15 --port 22 --ssh-key ~/.ssh/rsa start ru.aurora.foobar
Работа с эмуляторами
adt emulator предоставляет подкоманды для управления эмуляторами.
Примечание. Данные команды работают только на эмуляторе QEMU.
Запуск эмулятора
adt emulator start [ОПЦИИ]
Запускает эмулятор. Эмулятор может быть выбран по его ID или имени. Поддерживает опции для выбора устройства, запуска в headless-режиме, подключения виртуального внешнего дисплея или установки пользовательского SSH-порта.
Опции:
-d УСТРОЙСТВОили--device УСТРОЙСТВО— ID или имя эмулятора. Также может быть задано через переменную окруженияADT_DEFAULT_DEVICE.--headless— запуск в headless-режиме (без графического интерфейса). Взаимоисключающая опция с--external-display.--ssh-port ПОРТ_УСТРОЙСТВА— порт для SSH-подключения. Допустимый диапазон: 1-65535. По умолчанию: 2223. После установки порт используется для последующих запусков.--external-display [РАЗРЕШЕНИЕ]— подключить виртуальный внешний дисплей.РАЗРЕШЕНИЕдолжно быть указано в формате<ширина>x<высота>. Значение по умолчанию: 960x540. Несовместима с опцией--headless.
Примеры:
-
Запуск эмулятора с настройками по умолчанию:
adt emulator start -
Запуск эмулятора с виртуальным внешним дисплеем:
adt emulator start --device "emulator AuroraOS-5.2.0" --external-display
Остановка эмулятора
adt emulator stop [ОПЦИИ]
Останавливает запущенный эмулятор. Эмулятор может быть выбран по его ID или имени.
Опции:
-d УСТРОЙСТВОили--device УСТРОЙСТВО— ID или имя эмулятора. Также может быть задано через переменную окруженияADT_DEFAULT_DEVICE.
Пример:
-
Остановка эмулятора:
adt emulator stop --device "emulator AuroraOS-5.2.0"
Управление конфигурацией эмулятора
adt emulator config [ОПЦИИ] {list|get|set} [АРГУМЕНТЫ...]
Управляет конфигурацией эмулятора. Предоставляет подкоманды для вывода списка редактируемых свойств, получения значений свойств и установки новых значений.
Опции:
-dили--device УСТРОЙСТВО— ID или имя эмулятора. Также может быть задано через переменную окруженияADT_DEFAULT_DEVICE.
Подкоманды:
-
list— выводит список редактируемых свойств эмулятора. Если устройство указано, то его текущая модель будет отмечена. Не требует дополнительных аргументов. -
set СВОЙСТВО ЗНАЧЕНИЕ— устанавливает дляСВОЙСТВАуказанноеЗНАЧЕНИЕ.-
СВОЙСТВО— свойство эмулятора, которое будет изменено. Ниже представлен полный список свойств:Свойство Описание Допустимые значения mac Конфигурация MAC-адреса Строка в формате XX:XX:XX:XX:XX:XXcpus Количество ядер CPU Положительное целое число memory Выделенная память (в мегабайтах) Положительное целое число ssh_port Порт для SSH-подключения Допустимый номер сетевого порта downscale Масштабирование дисплея Целое число: 1 или 2 orientation Ориентация экрана portrait(книжная)landscape(альбомная)inverted_portrait(перевернутая книжная)inverted_landscape(перевернутая альбомная)external_keyboard Поддержка внешней клавиатуры Логическое значение: on (вкл) или off (выкл) point_mode Режим работы указывающего устройства touchscreen(сенсорный экран)mouse(мышь)acceleration Аппаратное ускорение Логическое значение: on (вкл) или off (выкл) -
ЗНАЧЕНИЕ— значение, которое может принимать свойство.
Статусы завершения:
0— конфигурация успешно обновилась;1— некорректноеСВОЙСТВОилиЗНАЧЕНИЕ.
-
-
get СВОЙСТВО— получает текущее значение указанногоСВОЙСТВА.
Примеры:
-
Вывод свойств, доступных для изменения:
$ adt emulator config list Available properties to modify: mac cpus memory ssh_port downscale orientation external_keyboard -
Установка MAC-адреса:
adt emulator config set mac 00:11:22:33:44:55 -
Конфигурация ядер процессора:
adt emulator config -d emulator-2 set cpus 4 -
Выделение памяти:
adt emulator config set memory 2048 -
Изменение ориентации устройства:
adt emulator config set orientation landscape
Управление моделями эмулятора
adt emulator device-model [ОПЦИИ] {list|set МОДЕЛЬ}
Управляет моделями эмулятора. Вывод списка доступных моделей эмулятора и изменение текущей модели эмулятора.
Опции:
-dили--device УСТРОЙСТВО— ID или имя эмулятора. Также может быть задано через переменную окруженияADT_DEFAULT_DEVICE.
Подкоманды:
list— выводит доступные модели эмулятора для выбранного устройства эмулятора;set ИМЯ_МОДЕЛИ— изменяет модель эмулятора на указанноеИМЯ_МОДЕЛИ.ИМЯ_МОДЕЛИявляется обязательным аргументов и должно быть одной из моделей, перечисленных в подкомандеlist.
Примеры:
-
Вывод списка доступных моделей эмулятора:
$ adt emulator device-model list All device models list for emulator: Name: Mashtab TrustPhone T1 - screen resolution 720x1600, screen size 68x152 mm Name: Aquarius NS M11 - screen resolution 1080x2400, screen size 69x155 mm Name: Aquarius NS M12 - screen resolution 1080x2400, screen size 69x155 mm -
Вывод списка доступных моделей при указанном эмуляторе (символом "*" отмечается текущая модель):
$ adt emulator device-model --device emulator-5.2.0.180 list * Name: Mashtab TrustPhone T1 - screen resolution 720x1600, screen size 68x152 mm Name: Aquarius NS M11 - screen resolution 1080x2400, screen size 69x155 mm Name: Aquarius NS M12 - screen resolution 1080x2400, screen size 69x155 mm -
Изменение на конкретную модель эмулятора:
$ adt emulator device-model -d "emulator AuroraOS-5.2.0" set phone Emulator "emulator AuroraOS-5.2.0.130" set device model phone
Добавление эмулятора
adt emulator add [ОПЦИИ] ИМЯ ПУТЬ
Регистрирует эмулятор в список устройств. Эмулятор идентифицируется по его имени и пути к директории эмулятора.
Позиционные аргументы:
-
ИМЯ— имя эмулятора. Значение должно быть уникальным среди всех известных устройств. Этот аргумент обязателен. -
ПУТЬ— путь к директории эмулятора. Должен быть валидной директорией. Этот аргумент обязателен.
Пример:
-
Добавление эмулятора:
adt emulator add emulator-1 /home/user/AuroraOS/emulators/5.2.0.180/DefaultEmulator
Удаление эмулятора
adt emulator rm [ОПЦИИ] ИМЯ
Удаляет эмулятор из списка зарегистрированных устройств.
Позиционные аргументы:
ИМЯ— имя эмулятора. Значение должно быть уникальным среди всех известных устройств. Этот аргумент обязателен.
Пример:
-
Удаление эмулятора:
adt emulator rm "emulator AuroraOS-5.2.0.130"