Начиная с 27 марта 2025 г. мы рекомендуем использовать android-latest-release
вместо aosp-main
для создания и участия в AOSP. Дополнительные сведения см. в разделе Изменения в AOSP .
Распределение устройств в Tradefed
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
При запуске теста (например, инструментального теста) для его корректного выполнения может потребоваться устройство. Или тесту (например, некоторым модульным тестам Java) устройство может вообще не потребоваться. А в других случаях может потребоваться несколько устройств (например, тесты телефон + часы). Во всех этих случаях диспетчер устройств отвечает за выделение необходимых устройств для теста, чтобы он выполнялся корректно. Мы называем эту фазу выделением устройств или шагом выбора устройств .
Распределение управляется DeviceSelectionOptions , которые позволяют тесту объявлять любые необходимые ему свойства устройства, включая:
- Уровень заряда батареи
- Тип устройства
- Тип продукта
- Серийный номер
Используйте реальные устройства
Это настройка по умолчанию, которая будет назначена всем тестам, не указывающим никаких свойств устройства. Физическое случайное устройство, отмеченное как ДОСТУПНОЕ, будет выбрано и назначено тесту.
Не используйте никаких устройств
Когда тесту не нужны никакие устройства, он может указать --null-device
или -n
в своей командной строке или <option name="null-device" value="true" />
в своем XML-конфигурации. Это выделяет заглушку-заполнитель NullDevice, которая представляет, что устройство не было выделено.
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-07-29 UTC."],[],[],null,["# Device allocation in Tradefed\n\nWhen starting a test (for example, an instrumentation test), it might need a\ndevice to be able to run properly. Or the test (such as some Java unit tests)\nmight not need a device at all. Still others or might even need multi-devices\n(like phone + watch tests). In all those cases, the Device Manager is\nresponsible for allocating the required devices to the test so it runs\nproperly. We call this phase the *device allocation* or *device selection* step.\n\nThe allocation is driven by\n[DeviceSelectionOptions](https://android.googlesource.com/platform/tools/tradefederation/+/refs/heads/android16-release/src/com/android/tradefed/device/DeviceSelectionOptions.java)\nthat allow a test to declare any properties it needs from a device, including:\n\n- Battery level\n- Device type\n- Product type\n- Serial number\n\nUse real devices\n----------------\n\nThis is the default setting that will be allocated to all tests that don't\nspecify any device properties. A physical random device marked\n[AVAILABLE](/docs/core/tests/tradefed/architecture/device-manager#allocation_states)\nwill be picked and assigned to the test.\n\nUse no devices\n--------------\n\nWhen no devices are needed by the test, it can specify `--null-device` or `-n`\non its command line, or `\u003coption name=\"null-device\" value=\"true\" /\u003e` in its\nconfiguration XML. This allocates a stub placeholder NullDevice that\nrepresents no device was allocated."]]