MixKernelTargetPreparer

public class MixKernelTargetPreparer
extends BaseTargetPreparer implements IConfigurationReceiver, ILabPreparer

java.lang.Object
   ↳ com.android.tradefed.targetprep.BaseTargetPreparer
     ↳ com.android.tradefed.targetprep.MixKernelTargetPreparer


ITargetPreparer,可將核心映像檔與裝置映像檔混合。

摘要

公用建構函式

MixKernelTargetPreparer()

公用方法

void setConfiguration(IConfiguration configuration)

注入使用的 IConfiguration

void setUp(TestInformation testInfo)

執行測試的目標設定。

受保護的方法

String[] getKernelVersionFromImage(File image)

從 boot/vendor_boot/system_dlkm/vendor_dlkm 映像檔擷取核心版本。

IRunUtil getRunUtil()

取得要使用的 IRunUtil 執行個體。

String[] parseKernelVersion(String source, String kernelVersionString)
void runMixKernelTool(ITestDevice device, File oldDeviceDir, File kernelDir, File gkiDir, File newDeviceDir)

執行混合核心工具,產生新的裝置建構版本

混合工具用法:build_mixed_kernels device_dir out_dir target flavor kernel_dir

void validateKernelCompatibility(String imageName, String[] imageVersion, String[] bootVersion, ITestDevice device)
void validateKernelVersion(File kernelDir, File gkiDir, ITestDevice device)

確認映像檔中的核心版本是否符合預期。

公用建構函式

MixKernelTargetPreparer

public MixKernelTargetPreparer ()

公用方法

setConfiguration

public void setConfiguration (IConfiguration configuration)

注入使用的 IConfiguration

參數
configuration IConfiguration

setUp

public void setUp (TestInformation testInfo)

執行測試的目標設定。

參數
testInfo TestInformation:叫用的 TestInformation

擲回
BuildError
DeviceNotAvailableException
TargetSetupError

受保護的方法

getKernelVersionFromImage

protected String[] getKernelVersionFromImage (File image)

從 boot/vendor_boot/system_dlkm/vendor_dlkm 映像檔擷取核心版本。

參數
image File:圖片檔案的 File

傳回
String[] ERROR(/String[]),其中包含已剖析的核心版本資訊:[kernelVersion、 patchLevel、pageSize]。如果無法剖析版本字串,則傳回空值。

getRunUtil

protected IRunUtil getRunUtil ()

取得要使用的 IRunUtil 執行個體。

傳回
IRunUtil 要使用的 IRunUtil

parseKernelVersion

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

參數
source String

kernelVersionString String

傳回
String[]

runMixKernelTool

protected void runMixKernelTool (ITestDevice device, 
                File oldDeviceDir, 
                File kernelDir, 
                File gkiDir, 
                File newDeviceDir)

執行混合核心工具,產生新的裝置建構版本

混合工具用法:build_mixed_kernels device_dir out_dir target flavor kernel_dir

參數
device ITestDevice:測試裝置

oldDeviceDir File:包含舊裝置圖片的目錄 File

kernelDir File:目錄 File 包含核心映像檔目的地

gkiDir File:目錄 File 包含 GKI 核心映像檔目的地

newDeviceDir File:新裝置圖片的生成目錄 File

擲回
TargetSetupError 如果無法執行混合核心工具
java.io.IOException

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 (File kernelDir, 
                File gkiDir, 
                ITestDevice device)

確認映像檔中的核心版本是否符合預期。如果無效,則擲回例外狀況。

參數
kernelDir File:包含核心映像檔的目錄 File

gkiDir File:目錄 File 包含 GKI 映像檔

device ITestDeviceITestDevice

擲回
TargetSetupError 如果沒有有效的 GKI boot.img