GkiDeviceFlashPreparer

public class GkiDeviceFlashPreparer
extends BaseTargetPreparer implements ILabPreparer

java.lang.Object
com.android.tradefed.targetprep.BaseTargetPreparer
com.android.tradefed.targetprep.GkiDeviceFlashPreparer


Программа для подготовки целевого устройства, которая прошивает устройство стандартным образом ядра Android. Подробности см. на странице https://source.android.com/devices/architecture/kernel/android-common.

Краткое содержание

Государственные строители

GkiDeviceFlashPreparer ()

Общедоступные методы

void setUp ( TestInformation testInfo)

Выполните настройку целевой системы для тестирования.

void validateGkiBootImg ( ITestDevice device, IBuildInfo buildInfo)

Требуется проверка загрузочного образа GKI.

Защищенные методы

void addHashFooter ( ITestDevice device, IBuildInfo buildInfo, File tmpDir)

Требуется проверка загрузочного образа GKI.

void buildGkiSystemDlkmImg ( ITestDevice device, IBuildInfo buildInfo, File tmpDir)

Создайте образ GKI system_dlkm, если предоставлен архив system_dlkm.

File extractSystemDlkmTarGzip (File systemDlkmArchive)

Распаковывает архив system_dlkm tar gzip в папку system_dlkm_staging.

void flattenSystemDlkm ( ITestDevice device, File systemDlkmStagingDir)

Сведите к минимуму размер каталога system_dlkm staging, чтобы все модули ядра находились непосредственно в /lib/modules.

String[] getDeviceKernelVersion ( ITestDevice device)

Перед прошивкой получите версию ядра устройства.

IHostOptions getHostOptions ()

Получите ссылку на IHostOptions

String[] getKernelVersionFromImage (File image)

Извлекает версию ядра из файлов образа boot/vendor_boot/system_dlkm/vendor_dlkm.

File getRequestedFile ( ITestDevice device, String requestedFileName, File sourceFile, File tmpDir)

Получите запрошенный файл из исходного файла (zip-архива или папки) по имени запрошенного файла.

IRunUtil getRunUtil ()

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

String[] parseKernelVersion (String source, String kernelVersionString)
void validateGkiBootImg ( ITestDevice device, IBuildInfo buildInfo, File tmpDir)

Требуется проверка загрузочного образа GKI.

void validateKernelCompatibility (String imageName, String[] imageVersion, String[] bootVersion, ITestDevice device)
void validateKernelVersion ( ITestDevice device, IBuildInfo buildInfo, File tmpDir)

Ожидается проверка версий ядра в образах.

Государственные строители

GkiDeviceFlashPreparer

public GkiDeviceFlashPreparer ()

Общедоступные методы

настраивать

public void setUp (TestInformation testInfo)

Выполните настройку целевой системы для тестирования.

Параметры
testInfo TestInformation : TestInformation полученная в результате вызова.

Броски
BuildError
DeviceNotAvailableException
TargetSetupError

validateGkiBootImg

public void validateGkiBootImg (ITestDevice device, 
                IBuildInfo buildInfo)

Требуется проверка загрузочного образа GKI. (Устарело. Пожалуйста, вызовите функцию, указав tmpDir)

Параметры
device ITestDevice : ITestDevice

buildInfo IBuildInfo : информация о сборке IBuildInfo

Броски
TargetSetupError если отсутствует действительный файл gki boot.img

Защищенные методы

addHashFooter

protected void addHashFooter (ITestDevice device, 
                IBuildInfo buildInfo, 
                File tmpDir)

Ожидается проверка загрузочного образа GKI. В случае отсутствия действительного файла boot.img генерируется исключение.

Параметры
device ITestDevice : ITestDevice

buildInfo IBuildInfo : информация о сборке IBuildInfo

tmpDir File : временный каталог File

Броски
TargetSetupError если отсутствует действительный файл gki boot.img
DeviceNotAvailableException

buildGkiSystemDlkmImg

protected void buildGkiSystemDlkmImg (ITestDevice device, 
                IBuildInfo buildInfo, 
                File tmpDir)

Создайте образ GKI system_dlkm, если предоставлен архив system_dlkm.

Параметры
device ITestDevice : ITestDevice

buildInfo IBuildInfo : информация о сборке IBuildInfo

tmpDir File : временный каталог File

Броски
TargetSetupError если при создании файла образа возникнет ошибка.

extractSystemDlkmTarGzip

protected File extractSystemDlkmTarGzip (File systemDlkmArchive)

Извлекает архив system_dlkm tar gzip в папку system_dlkm_staging. Эта функция является оберткой над ERROR(/TarUtil.extractTarGzipToTemp) , чтобы имитировать распаковку архива для модульного тестирования.

Параметры
systemDlkmArchive File : архив system_dlkm tar gzip, содержащий модули GKI.

Возвраты
File Файл, содержащий содержимое архива system_dlkm tar gzip.

Броски
java.io.IOException
IOException

flattenSystemDlkm

protected void flattenSystemDlkm (ITestDevice device, 
                File systemDlkmStagingDir)

Сведите структуру каталога system_dlkm staging таким образом, чтобы все модули ядра находились непосредственно в /lib/modules. Это необходимо для соответствия ожидаемой структуре файлов system_dlkm для сборок платформы.

Параметры
device ITestDevice : ITestDevice

systemDlkmStagingDir File : каталог подготовки system_dlkm File

Броски
IOException или TargetSetupError, если произошла ошибка при сглаживании system_dlkm.
TargetSetupError

getDeviceKernelVersion

protected String[] getDeviceKernelVersion (ITestDevice device)

Перед прошивкой получите версию ядра устройства.

Параметры
device ITestDevice : Объект ITestDevice , с которого нужно получить версию ядра.

Возвраты
String[] ERROR(/String[]) , содержащая разобранную информацию о версии ядра: [kernelVersion, patchLevel, pageSize]. Возвращает null, если строку версии не удается разобрать.2

Броски
DeviceNotAvailableException

getHostOptions

protected IHostOptions getHostOptions ()

Получите ссылку на IHostOptions

Возвраты
IHostOptions используемые параметры IHostOptions

getKernelVersionFromImage

protected String[] getKernelVersionFromImage (File image)

Извлекает версию ядра из файлов образа boot/vendor_boot/system_dlkm/vendor_dlkm. Этот метод считывает файл образа boot/vendor_boot/system_dlkm/vendor_dlkm и ищет определенный шаблон в строках, содержащих версию ядра Android. Затем он анализирует найденную строку для извлечения версии ядра в стандартизированном формате.

Параметры
image File : File , содержащий образ загрузки (например, boot.img).

Возвраты
String[] ERROR(/String[]) , содержащая разобранную информацию о версии ядра: [kernelVersion, patchLevel, pageSize]. Возвращает null, если строку версии не удается разобрать.

getRequestedFile

protected File getRequestedFile (ITestDevice device, 
                String requestedFileName, 
                File sourceFile, 
                File tmpDir)

Получите запрошенный файл из исходного файла (zip-архива или папки) по имени запрошенного файла.

В качестве исходного файла может быть предоставлен ZIP-архив. Метод распакует его во временную директорию и найдет запрошенный файл по указанному имени.

В качестве исходного файла может быть указана папка. Метод найдет запрошенный файл по указанному имени.

Параметры
device ITestDevice : ITestDevice

requestedFileName String : имя запрашиваемого файла.

sourceFile File : исходный файл

tmpDir File

Возвраты
File файл, указанный в запрошенном имени файла.

Броски
com.android.tradefed.targetprep.TargetSetupError
TargetSetupError

getRunUtil

protected IRunUtil getRunUtil ()

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

Возвраты
IRunUtil IRunUtil для использования

parseKernelVersion

protected String[] parseKernelVersion (String source, 
                String kernelVersionString)

Параметры
source String

kernelVersionString String

Возвраты
String[]

validateGkiBootImg

protected void validateGkiBootImg (ITestDevice device, 
                IBuildInfo buildInfo, 
                File tmpDir)

Ожидается проверка загрузочного образа GKI. В случае отсутствия действительного файла boot.img генерируется исключение.

Параметры
device ITestDevice : ITestDevice

buildInfo IBuildInfo : информация о сборке IBuildInfo

tmpDir File : временный каталог File

Броски
TargetSetupError если отсутствует действительный файл gki boot.img

validateKernelCompatibility

protected void validateKernelCompatibility (String imageName, 
                String[] imageVersion, 
                String[] bootVersion, 
                ITestDevice device)

Параметры
imageName String

imageVersion String

bootVersion String

device ITestDevice

Броски
TargetSetupError

validateKernelVersion

protected void validateKernelVersion (ITestDevice device, 
                IBuildInfo buildInfo, 
                File tmpDir)

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

Параметры
device ITestDevice : ITestDevice

buildInfo IBuildInfo : информация о сборке IBuildInfo

tmpDir File : временный каталог File

Броски
TargetSetupError если отсутствует действительный файл gki boot.img
DeviceNotAvailableException