CdmaDeviceFlasher

public class CdmaDeviceFlasher
extends FastbootDeviceFlasher

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


CDMA 無線通信を搭載した Android デバイスで画像をフラッシュするクラス。

このクラスは、無線通信とブートローダーが直接通信できないのが一般的であるため、無線ベースバンドを適切に更新するために特別な書き込みシーケンスが必要となることから、必要となります。通常、RIL(ユーザースペースで実行)をプロキシとして使用します。

概要

定数

int BASEBAND_FLASH_TIMEOUT

ベースバンドのフラッシュ(リカバリ モード)に要する時間(ミリ秒)

パブリック コンストラクタ

CdmaDeviceFlasher()

パブリック メソッド

void flash(ITestDevice device, IDeviceBuildInfo deviceBuild)

デバイスにビルドをフラッシュします。

ベースバンドが最新の場合、このフラッシャーは DeviceFlasher スーパークラスと同じ動作をします。

保護されたメソッド

File extractSystemZip(IDeviceBuildInfo deviceBuild)

アップデータ zip をディレクトリに抽出して、そのディレクトリのパスを返します。

単体テスト用に公開

void flashBaseband(ITestDevice device, File basebandImageFile)

指定されたベースバンド イメージを書き込み、その後デバイスを再起動しません

void flashSystem(ITestDevice device, IDeviceBuildInfo deviceBuild)

デバイスにシステム イメージを書き込みます。

String getBootPartitionName()

このデバイス フラッシャーのブート パーティション名を取得します。

IRunUtil getRunUtil()

使用する RunUtil インスタンスを取得します。

定数

BASEBAND_FLASH_TIMEOUT

protected static final int BASEBAND_FLASH_TIMEOUT

ベースバンドのフラッシュ(リカバリ モード)に要する時間(ミリ秒)

定数値: 600000 (0x000927c0)

パブリック コンストラクタ

CdmaDeviceFlasher

public CdmaDeviceFlasher ()

パブリック メソッド

フラッシュ

public void flash (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

デバイスにビルドをフラッシュします。

フラッシュが完了するとすぐに戻ります。呼び出し元は、テストに進む前にデバイスがオンラインになり、利用可能になるまで待つ必要があります。

ベースバンドが最新の場合、このフラッシャーは DeviceFlasher スーパークラスと同じ動作をします。ベースバンドの更新が必要な場合は、次の処理が行われます。

  1. 通常どおりブートローダーを書き込みます。
  2. updater.zip を解凍する
  3. 新しいベースバンドを書き込みますが、その後は再起動しないでください
  4. ブート、リカバリ、システム パーティションをフラッシュする
  5. 再起動(デバイスがリカバリで起動し、ベースバンドが実際にフラッシュされる)
  6. もう一度再起動する
  7. Flash ユーザーデータ
  8. ユーザー空間に再起動

パラメータ
device ITestDevice: ITestDevice を書き込む

deviceBuild IDeviceBuildInfo: IDeviceBuildInfo を書き込む

例外
DeviceNotAvailableException
TargetSetupError

保護されたメソッド

extractSystemZip

protected File extractSystemZip (IDeviceBuildInfo deviceBuild)

アップデータ zip をディレクトリに抽出して、そのディレクトリのパスを返します。

単体テスト用に公開

パラメータ
deviceBuild IDeviceBuildInfo

戻り値
File

例外
IOException

flashBaseband

protected void flashBaseband (ITestDevice device, 
                File basebandImageFile)

指定されたベースバンド イメージを書き込み、その後デバイスを再起動しません

パラメータ
device ITestDevice: ITestDevice を書き込む

basebandImageFile File: ベースバンド イメージ File

例外
DeviceNotAvailableException デバイスが利用できない場合
TargetSetupError ベースバンドの書き込みに失敗した場合

flashSystem

protected void flashSystem (ITestDevice device, 
                IDeviceBuildInfo deviceBuild)

デバイスにシステム イメージを書き込みます。

パラメータ
device ITestDevice: ITestDevice を書き込む

deviceBuild IDeviceBuildInfo: IDeviceBuildInfo を書き込む

例外
DeviceNotAvailableException
TargetSetupError

getBootPartitionName

protected String getBootPartitionName ()

このデバイス フラッシャーのブート パーティション名を取得します。

デフォルトは「bootloader」です。サブクラスは必要に応じてオーバーライドする必要があります。

戻り値
String

getRunUtil

protected IRunUtil getRunUtil ()

使用する RunUtil インスタンスを取得します。

単体テスト用に公開されています。

戻り値
IRunUtil