FastbootDeviceFlasher
public class FastbootDeviceFlasher
extends Object
implements IDeviceFlasher
java.lang.Object | |
↳ | com.android.tradefed.targetprep.FastbootDeviceFlasher |
Класс, который использует fastboot для прошивки образа на физическом оборудовании Android.
Резюме
Поля | |
---|---|
public static final String | BASEBAND_IMAGE_NAME
|
Общественные конструкторы | |
---|---|
FastbootDeviceFlasher () |
Публичные методы | |
---|---|
void | flash (ITestDevice device, IDeviceBuildInfo deviceBuild) Вспышки накапливаются на устройстве. |
CommandStatus | getSystemFlashingStatus () Получить статус выполнения команды для прошивки основных разделов системы. |
IDeviceFlasher.UserDataFlashOption | getUserDataFlashOption () Получает, следует ли обновить, стереть или сохранить изображение пользовательских данных. |
void | overrideDeviceOptions (ITestDevice device) Параметры переопределения для устройства. |
void | setDataWipeSkipList ( dataWipeSkipList) setDataWipeSkipList ( dataWipeSkipList) Устанавливает список путей под /data . |
void | setFlashOptions ( flashOptions) setFlashOptions ( flashOptions) Устанавливает список параметров для передачи с командами flash / update. |
void | setFlashingResourcesRetriever ( IFlashingResourcesRetriever retriever) Устанавливает механизм, с помощью которого флешер может извлекать файлы ресурсов для прошивки. |
void | setForceSystemFlash (boolean forceSystemFlash) Устанавливает, должна ли система всегда мигать, даже если запущена текущая сборка |
void | setRamdiskPartition (String ramdiskPartition) Устанавливает раздел RAMDisk |
void | setShouldFlashRamdisk (boolean shouldFlashRamdisk) Устанавливает, следует ли прошивать дополнительный RAM-диск после обновления устройства с помощью ZIP-архива. |
void | setUserDataFlashOption ( IDeviceFlasher.UserDataFlashOption flashOption) Переключает, следует ли прошивать, стирать или сохранять изображение пользовательских данных. |
void | setWipeTimeout (long timeout) Установите тайм-аут для очистки данных. |
boolean | shouldFlashRamdisk () Проверяет, настроен ли флешер на наличие дополнительного RAM-диска, который должен быть прошит после обновления устройства с помощью архива образа. |
Защищенные методы | |
---|---|
void | checkAndFlashBaseband (ITestDevice device, IDeviceBuildInfo deviceBuild) При необходимости прошейте изображение основной полосы частот на устройстве. |
boolean | checkAndFlashBootloader (ITestDevice device, IDeviceBuildInfo deviceBuild) При необходимости прошейте образ загрузчика на устройстве. |
boolean | checkAndFlashSystem (ITestDevice device, String systemBuildId, String systemBuildFlavor, IDeviceBuildInfo deviceBuild) При необходимости прошейте образ системы на устройстве. |
boolean | checkShouldFlashBaseband (ITestDevice device, IDeviceBuildInfo deviceBuild) Проверьте, нужно ли прошивать baseband на предоставленном устройстве. |
IFlashingResourcesParser | createFlashingResourcesParser ( IDeviceBuildInfo localBuild, DeviceDescriptor descriptor) Фабричный метод для создания |
void | downloadExtraImageFiles ( IFlashingResourcesParser resourceParser, IFlashingResourcesRetriever retriever, IDeviceBuildInfo localBuild) Хук, позволяющий подклассам при необходимости загружать дополнительные файлы пользовательских изображений. |
void | downloadFlashingResources (ITestDevice device, IDeviceBuildInfo localBuild) Загружает дополнительные файлы изображений для прошивки |
String | executeFastbootCmd (ITestDevice device, String... cmdArgs) Вспомогательный метод для выполнения команды fastboot. |
String | executeLongFastbootCmd (ITestDevice device, String... cmdArgs) Вспомогательный метод для выполнения длительной команды fastboot. |
void | flashBaseband (ITestDevice device, File basebandImageFile) Мигает заданный образ основной полосы частот и перезагружается обратно в загрузчик |
void | flashBootloader (ITestDevice device, File bootloaderImageFile) Мигает указанный образ загрузчика и перезагружается обратно в загрузчик |
void | flashExtraImages (ITestDevice device, IDeviceBuildInfo deviceBuild) Перед прошивкой системы и перезагрузкой прошейте все разделы, относящиеся к конкретному устройству. |
void | flashPartition (ITestDevice device, File imgFile, String partition) Прошить отдельный раздел устройства |
void | flashRamdiskIfNeeded (ITestDevice device, IDeviceBuildInfo deviceBuild) |
void | flashSystem (ITestDevice device, IDeviceBuildInfo deviceBuild) Прошить образ системы на устройстве. |
void | flashUserData (ITestDevice device, IDeviceBuildInfo deviceBuild) Прошивка раздела с пользовательскими данными на устройстве. |
void | flashUserDataFromDeviceImageFile (ITestDevice device, IDeviceBuildInfo deviceBuild) Извлекает userdata.img из файла образа устройства и записывает его на устройство. |
String | getBootPartitionName () Получите имя загрузочного раздела для этого прошивальщика устройства. |
String | getBootloaderFilePrefix (ITestDevice device) Получите префикс файла загрузчика. |
String | getCurrentSlot (ITestDevice device) Вспомогательный метод для получения текущего слота (для устройств с поддержкой A / B). |
IFlashingResourcesRetriever | getFlashingResourcesRetriever () |
String | getImageVersion (ITestDevice device, String imageName) Вспомогательный метод для получения текущей версии образа на устройстве. |
IRunUtil | getRunUtil () Выставлен на тестирование. |
void | handleUserDataFlashing (ITestDevice device, IDeviceBuildInfo deviceBuild) Обработка перепрошивки раздела userdata / cache |
boolean | hasPartition (ITestDevice device, String partition) Проверяет с помощью загрузчика, существует ли указанный раздел |
void | preFlashSetup (ITestDevice device, IDeviceBuildInfo deviceBuild) Выполните все необходимые дополнительные настройки перед перепрошивкой. |
void | verifyRequiredBoards (ITestDevice device, IFlashingResourcesParser resourceParser, String deviceProductType) Убедитесь, что тип продукта устройства поддерживает прошивку. |
void | wipeCache (ITestDevice device) Очистите раздел кеша на устройстве. |
void | wipePartition (ITestDevice device, String partition) Очистите указанный раздел с помощью `fastboot erase <name>` |
Поля
BASEBAND_IMAGE_NAME
public static final String BASEBAND_IMAGE_NAME
Общественные конструкторы
FastbootDeviceFlasher
public FastbootDeviceFlasher ()
Публичные методы
вспышка
public void flash (ITestDevice device, IDeviceBuildInfo deviceBuild)
Вспышки накапливаются на устройстве.
Возврат сразу после завершения перепрошивки. Вызывающие абоненты должны дождаться, пока устройство будет подключено к сети и станет доступным, прежде чем приступить к тестированию.Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
deviceBuild | IDeviceBuildInfo : в IDeviceBuildInfo к вспышке |
Броски | |
---|---|
DeviceNotAvailableException | |
TargetSetupError |
getSystemFlashingStatus
public CommandStatus getSystemFlashingStatus ()
Получить статус выполнения команды для прошивки основных разделов системы.
Обратите внимание , что если система перегородка не блеснула (система уже имеет сборку для прошивки) состояние команды может быть null
Возврат | |
---|---|
CommandStatus |
getUserDataFlashOption
public IDeviceFlasher.UserDataFlashOption getUserDataFlashOption ()
Получает, следует ли обновить, стереть или сохранить изображение пользовательских данных.
Возврат | |
---|---|
IDeviceFlasher.UserDataFlashOption | Следует ли прошивать, стирать или сохранять изображение пользовательских данных. |
overrideDeviceOptions
public void overrideDeviceOptions (ITestDevice device)
Параметры переопределения для устройства. Используется для переопределения значений параметров по умолчанию, если значения по умолчанию не поддерживаются конкретным устройством.
setDataWipeSkipList
public void setDataWipeSkipList (dataWipeSkipList)
Устанавливает список путей под /data
, чтобы избежать очистки при использовании ITestsZipInstaller
/data
.Параметры | |
---|---|
dataWipeSkipList |
setFlashOptions
public void setFlashOptions (flashOptions)
Устанавливает список параметров для передачи с командами flash / update.
setFlashingResourcesRetriever
public void setFlashingResourcesRetriever (IFlashingResourcesRetriever retriever)
Устанавливает механизм, с помощью которого флешер может извлекать файлы ресурсов для прошивки.
Параметры | |
---|---|
retriever | IFlashingResourcesRetriever : в IFlashingResourcesRetriever к использованию |
setForceSystemFlash
public void setForceSystemFlash (boolean forceSystemFlash)
Устанавливает, должна ли система всегда мигать, даже если запущена текущая сборка
setRamdiskPartition
public void setRamdiskPartition (String ramdiskPartition)
Устанавливает раздел RAMDisk
setShouldFlashRamdisk
public void setShouldFlashRamdisk (boolean shouldFlashRamdisk)
Устанавливает, следует ли прошивать дополнительный RAM-диск после обновления устройства с помощью ZIP-архива.
setUserDataFlashOption
public void setUserDataFlashOption (IDeviceFlasher.UserDataFlashOption flashOption)
Переключает, следует ли прошивать, стирать или сохранять изображение пользовательских данных.
setWipeTimeout
public void setWipeTimeout (long timeout)
Установите тайм-аут для очистки данных.
Параметры | |
---|---|
timeout | long |
shouldFlashRamdisk
public boolean shouldFlashRamdisk ()
Проверяет, настроен ли флешер на наличие дополнительного RAM-диска, который должен быть прошит после обновления устройства с помощью архива образа.
Возврат | |
---|---|
boolean |
Защищенные методы
checkAndFlashBaseband
protected void checkAndFlashBaseband (ITestDevice device, IDeviceBuildInfo deviceBuild)
При необходимости прошейте изображение основной полосы частот на устройстве. Будет мигать только основная полоса, если на устройстве установлена текущая версия! = Требуемая версия
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
deviceBuild | IDeviceBuildInfo : IDeviceBuildInfo , который содержит низкочастотное изображение прошить |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось прошить baseband |
checkAndFlashBootloader
protected boolean checkAndFlashBootloader (ITestDevice device, IDeviceBuildInfo deviceBuild)
При необходимости прошейте образ загрузчика на устройстве.
Будет прошивать загрузчик только в том случае, если на устройстве установлена текущая версия! = Требуемая версия.
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
deviceBuild | IDeviceBuildInfo : IDeviceBuildInfo , который содержит загрузчик изображение прошить |
Возврат | |
---|---|
boolean | true , если загрузчик был блеснули, false , если он был пропущен |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось прошить загрузчик |
checkAndFlashSystem
protected boolean checkAndFlashSystem (ITestDevice device, String systemBuildId, String systemBuildFlavor, IDeviceBuildInfo deviceBuild)
При необходимости прошейте образ системы на устройстве.
Пожалуйста , посмотрите на ERROR(/#shouldFlashSystem(String,String,com.android.tradefed.build.IDeviceBuildInfo))
Независимо от выбранного пути после выполнения метода устройство должно загрузиться в пользовательское пространство.
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
systemBuildId | String : текущая сборка идентификатор запущенного на устройстве |
systemBuildFlavor | String : текущий аромат сборки , запущенный на устройстве |
deviceBuild | IDeviceBuildInfo : IDeviceBuildInfo , который содержит образ системы прошить |
Возврат | |
---|---|
boolean | true , если система была мелькнуло, false , если он был пропущен |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось прошить загрузчик |
checkShouldFlashBaseband
protected boolean checkShouldFlashBaseband (ITestDevice device, IDeviceBuildInfo deviceBuild)
Проверьте, нужно ли прошивать baseband на предоставленном устройстве.
Параметры | |
---|---|
device | ITestDevice : ITestDevice для проверки |
deviceBuild | IDeviceBuildInfo : IDeviceBuildInfo , который содержит низкочастотное изображение , чтобы проверить |
Возврат | |
---|---|
boolean |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось прошить baseband |
createFlashingResourcesParser
protected IFlashingResourcesParser createFlashingResourcesParser (IDeviceBuildInfo localBuild, DeviceDescriptor descriptor)
Фабричный метод для создания IFlashingResourcesParser
.
Параметры | |
---|---|
localBuild | IDeviceBuildInfo : в IDeviceBuildInfo для синтаксического анализа |
descriptor | DeviceDescriptor : дескриптор устройства мигающих сигналов. |
Возврат | |
---|---|
IFlashingResourcesParser | IFlashingResourcesParser созданный заводским способом. |
Броски | |
---|---|
TargetSetupError |
скачатьExtraImageFiles
protected void downloadExtraImageFiles (IFlashingResourcesParser resourceParser, IFlashingResourcesRetriever retriever, IDeviceBuildInfo localBuild)
Хук, позволяющий подклассам при необходимости загружать дополнительные файлы пользовательских изображений.
Параметры | |
---|---|
resourceParser | IFlashingResourcesParser : в IFlashingResourcesParser |
retriever | IFlashingResourcesRetriever : в IFlashingResourcesRetriever |
localBuild | IDeviceBuildInfo : IDeviceBuildInfo |
Броски | |
---|---|
TargetSetupError |
скачать ПрошивкаРесурсы
protected void downloadFlashingResources (ITestDevice device, IDeviceBuildInfo localBuild)
Загрузка дополнительных файлов изображений для прошивки
Параметры | |
---|---|
device | ITestDevice : ITestDevice для загрузки ресурсов |
localBuild | IDeviceBuildInfo : IDeviceBuildInfo для заполнения. Предполагается, что файл образа устройства уже установлен |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось получить ресурсы |
executeFastbootCmd
protected String executeFastbootCmd (ITestDevice device, String... cmdArgs)
Вспомогательный метод для выполнения команды fastboot.
Параметры | |
---|---|
device | ITestDevice : ITestDevice выполнить команду |
cmdArgs | String : аргументы , чтобы обеспечить FastBoot |
Возврат | |
---|---|
String | Строка вывода команды stderr, если она не пуста. В противном случае возвращает stdout. Некоторые команды fastboot странны тем, что они сбрасывают вывод в stderr в случае успеха. |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если команда fastboot не работает |
executeLongFastbootCmd
protected String executeLongFastbootCmd (ITestDevice device, String... cmdArgs)
Вспомогательный метод для выполнения длительной команды fastboot.
Примечание: Большинство команд FastBoot обычно выполняются в тайм - аут , допускаемой INativeDevice.executeFastbootCommand(String)
. Однако, когда несколько устройств мигают одновременно, команды fastboot могут занять намного больше времени, чем обычно.
Параметры | |
---|---|
device | ITestDevice : ITestDevice выполнить команду |
cmdArgs | String : аргументы , чтобы обеспечить FastBoot |
Возврат | |
---|---|
String | Строка вывода stderr из команды, если она не пуста. В противном случае возвращает stdout. Некоторые команды fastboot странны тем, что они сбрасывают вывод в stderr в случае успеха. |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если команда fastboot не работает |
flashBaseband
protected void flashBaseband (ITestDevice device, File basebandImageFile)
Мигает заданный образ основной полосы частот и перезагружается обратно в загрузчик
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
basebandImageFile | File : базовая полоса изображения ERROR(/File) |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось прошить baseband |
flashBootloader
protected void flashBootloader (ITestDevice device, File bootloaderImageFile)
Мигает указанный образ загрузчика и перезагружается обратно в загрузчик
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
bootloaderImageFile | File : загрузчик изображений ERROR(/File) |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось прошить |
flashExtraImages
protected void flashExtraImages (ITestDevice device, IDeviceBuildInfo deviceBuild)
Перед прошивкой системы и перезагрузкой прошейте все разделы, относящиеся к конкретному устройству. Нет операции, если не отменено.
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
deviceBuild | IDeviceBuildInfo : IDeviceBuildInfo , содержащий файлы сборки |
Броски | |
---|---|
| com.android.tradefed.device.DeviceNotAvailableException |
TargetSetupError | |
DeviceNotAvailableException |
flashPartition
protected void flashPartition (ITestDevice device, File imgFile, String partition)
Прошить отдельный раздел устройства
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
imgFile | File : а ERROR(/File) , указывающий на изображение , чтобы быть прошит |
partition | String : имя раздела, прошить |
Броски | |
---|---|
DeviceNotAvailableException | |
TargetSetupError |
flashRamdiskIfNeeded
protected void flashRamdiskIfNeeded (ITestDevice device, IDeviceBuildInfo deviceBuild)
Параметры | |
---|---|
device | ITestDevice |
deviceBuild | IDeviceBuildInfo |
Броски | |
---|---|
DeviceNotAvailableException | |
TargetSetupError |
flashSystem
protected void flashSystem (ITestDevice device, IDeviceBuildInfo deviceBuild)
Прошить образ системы на устройстве.
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
deviceBuild | IDeviceBuildInfo : в IDeviceBuildInfo к вспышке |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если команда fastboot не работает |
flashUserData
protected void flashUserData (ITestDevice device, IDeviceBuildInfo deviceBuild)
Прошивка раздела с пользовательскими данными на устройстве.
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
deviceBuild | IDeviceBuildInfo : IDeviceBuildInfo , который содержит файлы для прошивки |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось прошить данные пользователя |
flashUserDataFromDeviceImageFile
protected void flashUserDataFromDeviceImageFile (ITestDevice device, IDeviceBuildInfo deviceBuild)
Извлекает userdata.img из файла образа устройства и записывает его на устройство.
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
deviceBuild | IDeviceBuildInfo : IDeviceBuildInfo , который содержит файлы для прошивки |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось извлечь или прошить данные пользователя |
getBootPartitionName
protected String getBootPartitionName ()
Получите имя загрузочного раздела для этого прошивальщика устройства.
По умолчанию - "загрузчик". При необходимости подклассы следует переопределить.
Возврат | |
---|---|
String |
getBootloaderFilePrefix
protected String getBootloaderFilePrefix (ITestDevice device)
Получите префикс файла загрузчика.
По умолчаниюgetBootPartitionName()
. При необходимости подклассы следует переопределить.Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
Возврат | |
---|---|
String |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось получить префикс |
getCurrentSlot
protected String getCurrentSlot (ITestDevice device)
Вспомогательный метод для получения текущего слота (для устройств с поддержкой A / B).
Параметры | |
---|---|
device | ITestDevice : ITestDevice выполнить команду. |
Возврат | |
---|---|
String | "a", "b" или ноль (если устройство не поддерживает A / B) |
Броски | |
---|---|
| com.android.tradefed.device.DeviceNotAvailableException |
TargetSetupError | |
DeviceNotAvailableException |
getFlashingResourcesRetriever
protected IFlashingResourcesRetriever getFlashingResourcesRetriever ()
Возврат | |
---|---|
IFlashingResourcesRetriever |
getImageVersion
protected String getImageVersion (ITestDevice device, String imageName)
Вспомогательный метод для получения текущей версии образа на устройстве.
Параметры | |
---|---|
device | ITestDevice : ITestDevice выполнить команду |
imageName | String : имя изображения , чтобы получить. |
Возврат | |
---|---|
String | Строка вывода stdout из команды |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если команда fastboot не работает или версия не может быть определена |
getRunUtil
protected IRunUtil getRunUtil ()
Выставлен на тестирование.
Возврат | |
---|---|
IRunUtil |
handleUserDataFlashing
protected void handleUserDataFlashing (ITestDevice device, IDeviceBuildInfo deviceBuild)
Обработка перепрошивки раздела userdata / cache
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
deviceBuild | IDeviceBuildInfo : IDeviceBuildInfo , который содержит файлы для прошивки |
Броски | |
---|---|
| com.android.tradefed.device.DeviceNotAvailableException |
TargetSetupError | |
DeviceNotAvailableException |
hasPartition
protected boolean hasPartition (ITestDevice device, String partition)
Проверяет с помощью загрузчика, существует ли указанный раздел
Параметры | |
---|---|
device | ITestDevice : ITestDevice работать на |
partition | String : имя раздела для проверки |
Возврат | |
---|---|
boolean |
Броски | |
---|---|
DeviceNotAvailableException |
preFlashSetup
protected void preFlashSetup (ITestDevice device, IDeviceBuildInfo deviceBuild)
Выполните все необходимые дополнительные настройки перед перепрошивкой. Нет операции, если не отменено.
Параметры | |
---|---|
device | ITestDevice : ITestDevice подготовить |
deviceBuild | IDeviceBuildInfo : IDeviceBuildInfo , содержащий файлы сборки |
Броски | |
---|---|
| com.android.tradefed.device.DeviceNotAvailableException |
TargetSetupError | |
DeviceNotAvailableException |
verifyRequiredBoards
protected void verifyRequiredBoards (ITestDevice device, IFlashingResourcesParser resourceParser, String deviceProductType)
Убедитесь, что тип продукта устройства поддерживает прошивку.
Базовая реализация будет убедиться , что deviceProductType входит в IFlashingResourcesParser.getRequiredBoards()
сбора. Подклассы могут иметь приоритет над по желанию.
Параметры | |
---|---|
device | ITestDevice : ITestDevice чтобы быть прошит |
resourceParser | IFlashingResourcesParser : в IFlashingResourcesParser |
deviceProductType | Снабжать device String , String и т.п. : НАСТОЯЩИМ device , «сек Тип продукта |
Броски | |
---|---|
TargetSetupError | если информация о плате, необходимая для сборки, не соответствует устройству |
стереть кэш
protected void wipeCache (ITestDevice device)
Очистите раздел кеша на устройстве.
Параметры | |
---|---|
device | ITestDevice : ITestDevice мигать |
Броски | |
---|---|
DeviceNotAvailableException | если устройство недоступно |
TargetSetupError | если не удалось прошить кеш |
стереть раздел
protected void wipePartition (ITestDevice device, String partition)
Очистите указанный раздел с помощью `fastboot erase <name>`
Параметры | |
---|---|
device | ITestDevice : ITestDevice работать на |
partition | String : имя раздела протирать |
Броски | |
---|---|
DeviceNotAvailableException | |
TargetSetupError |