Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る
このページは Cloud Translation API によって翻訳されました。
Switch to English

FastbootDeviceFlasher

public class FastbootDeviceFlasher
extends Object implements IDeviceFlasher

java.lang.Object
com.android.tradefed.targetprep.FastbootDeviceFlasher


物理的なAndroidハードウェアでイメージをフラッシュするためにfastbootに依存するクラス。

概要

田畑

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下のパスのリストを設定して、 ITestsZipInstaller使用時に消去されないようにしITestsZipInstaller

スキップリストの粒度は/data直接の子であることに注意してください。

void setFlashOptions ( flashOptions) setFlashOptions ( flashOptions)

flash / updateコマンドで渡すオプションのリストを設定します。

void setFlashingResourcesRetriever ( IFlashingResourcesRetriever retriever)

フラッシャーがフラッシュするリソースファイルを取得できるメカニズムを設定します。

void setForceSystemFlash (boolean forceSystemFlash)

現在のビルドを実行している場合でも、システムを常にフラッシュする必要があるかどうかを設定します

void setShouldFlashRamdisk (boolean shouldFlashRamdisk)

イメージzipを介してデバイスを更新した後、追加のRAMディスクをフラッシュするかどうかを設定します

void setUserDataFlashOption ( IDeviceFlasher.UserDataFlashOption flashOption)

ユーザーデータイメージをフラッシュするか、ワイプするか、保持するかを切り替えます

void setWipeTimeout (long timeout)

データを消去するためのタイムアウトを設定します。

boolean shouldFlashRamdisk ()

イメージzip経由でデバイスを更新した後、フラッシャーが追加の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)

提供されたデバイスのベースバンドをフラッシュする必要があるかどうかを確認します。

IFlashingResourcesParser createFlashingResourcesParser ( IDeviceBuildInfo localBuild, DeviceDescriptor descriptor)

IFlashingResourcesParserを作成するためのファクトリメソッド。

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)

デバイスのフラッシュuserdataパーティション。

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使用時に消去されないようにし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)

現在のビルドを実行している場合でも、システムを常にフラッシュする必要があるかどうかを設定します

setShouldFlashRamdisk

public void setShouldFlashRamdisk (boolean shouldFlashRamdisk)

イメージzipを介してデバイスを更新した後、追加のRAMディスクをフラッシュするかどうかを設定します

setUserDataFlashOption

public void setUserDataFlashOption (IDeviceFlasher.UserDataFlashOption flashOption)

ユーザーデータイメージをフラッシュするか、ワイプするか、保持するかを切り替えます

setWipeTimeout

public void setWipeTimeout (long timeout)

データを消去するためのタイムアウトを設定します。

パラメーター
timeout long

shouldFlashRamdisk

public boolean shouldFlashRamdisk ()

イメージzip経由でデバイスを更新した後、フラッシャーが追加のRAMディスクをフラッシュするように設定されているかどうかを確認します

戻り値
boolean

保護されたメソッド

checkAndFlashBaseband

protected void checkAndFlashBaseband (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

必要に応じて、デバイスのベースバンドイメージをフラッシュします。デバイスの現在のバージョンが!=必要なバージョンの場合にのみベースバンドをフラッシュします

パラメーター
device ITestDevice :フラッシュするITestDevice

deviceBuild IDeviceBuildInfo :フラッシュするベースバンドイメージを含むIDeviceBuildInfo

投げる
DeviceNotAvailableException デバイスが利用できない場合
TargetSetupError ベースバンドのフラッシュに失敗した場合

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 :デバイスで実行中の現在のビルドID

systemBuildFlavor String :デバイスで実行中の現在のビルドフレーバー

deviceBuild IDeviceBuildInfo :フラッシュするシステムイメージを含むIDeviceBuildInfo

戻り値
boolean システムがフラッシュされた場合はtrue 、スキップされた場合はfalse

投げる
DeviceNotAvailableException デバイスが利用できない場合
TargetSetupError ブートローダーのフラッシュに失敗した場合

checkShouldFlashBaseband

protected boolean checkShouldFlashBaseband (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

提供されたデバイスのベースバンドをフラッシュする必要があるかどうかを確認します。

パラメーター
device ITestDevice :チェックするITestDevice

deviceBuild IDeviceBuildInfo :チェックするベースバンドイメージを含むIDeviceBuildInfo

戻り値
boolean

投げる
DeviceNotAvailableException デバイスが利用できない場合
TargetSetupError ベースバンドのフラッシュに失敗した場合

createFlashingResourcesParser

protected IFlashingResourcesParser createFlashingResourcesParser (IDeviceBuildInfo localBuild, 
                DeviceDescriptor descriptor)

IFlashingResourcesParserを作成するためのファクトリメソッド。

単体テストのために公開されています。

パラメーター
localBuild IDeviceBuildInfo :解析するIDeviceBuildInfo

descriptor DeviceDescriptor :フラッシュされるデバイスの記述子。

戻り値
IFlashingResourcesParser ファクトリメソッドによって作成されたIFlashingResourcesParser

投げる
TargetSetupError

downloadExtraImageFiles

protected void downloadExtraImageFiles (IFlashingResourcesParser resourceParser, 
                IFlashingResourcesRetriever retriever, 
                IDeviceBuildInfo localBuild)

必要に応じて、サブクラスが追加のカスタム画像ファイルをダウンロードできるようにするフック。

パラメーター
resourceParser IFlashingResourcesParserIFlashingResourcesParser

retriever IFlashingResourcesRetrieverIFlashingResourcesRetriever

localBuild IDeviceBuildInfoIDeviceBuildInfo

投げる
TargetSetupError

downloadFlashingResources

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コマンドは通常、 ITestDevice#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 ベースバンドのフラッシュに失敗した場合

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)

デバイスのフラッシュuserdataパーティション。

パラメーター
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」、またはnull(デバイスが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 IFlashingResourcesParserIFlashingResourcesParser

deviceProductType Stringdeviceの製品タイプ

投げる
TargetSetupError ビルドに必要なボード情報がデバイスと一致しなかった場合

wipeCache

protected void wipeCache (ITestDevice device)

デバイスのキャッシュパーティションをワイプします。

パラメーター
device ITestDevice :フラッシュするITestDevice

投げる
DeviceNotAvailableException デバイスが利用できない場合
TargetSetupError キャッシュのフラッシュに失敗した場合

wipePartition

protected void wipePartition (ITestDevice device, 
                String partition)

`fastboot erase <name>`で指定したパーティションをワイプします

パラメーター
device ITestDevice :操作するITestDevice

partition String :ワイプするパーティションの名前

投げる
DeviceNotAvailableException
TargetSetupError