IDeviceManager

public interface IDeviceManager

com.android.tradefed.device.IDeviceManager


テストに使用可能な一連のデバイスを管理するためのインターフェース。

概要

ネストされたクラス

interface IDeviceManager.IFastbootListener

fastboot の状態変更のリスナー。 

パブリック メソッド

abstract void addDeviceMonitor(IDeviceMonitor mon)

IDeviceMonitor を追加します。

abstract void addFastbootListener(IDeviceManager.IFastbootListener listener)

リスナーが fastboot の状態変化に関心を持っていることをマネージャーに通知します。

abstract void addMonitoringTcpFastbootDevice(String serial, String fastboot_serial)

fastboot モニターにデバイスを追加します。

abstract ITestDevice allocateDevice(IDeviceSelection options, boolean isTemporary)

特定の基準を満たすテスト用デバイスをリクエストします。

abstract ITestDevice allocateDevice(IDeviceSelection options)

特定の基準を満たすテスト用デバイスをリクエストします。

abstract ITestDevice allocateDevice()

テスト用に実機をリクエストする

abstract ITestDevice connectToTcpDevice(String ipAndPort)

adb-over-tcp でデバイスに接続する

このメソッドで新しいデバイスが割り当てられ、最終的には disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

返された ITestDevice はオンラインですが、応答しない可能性があります。

abstract boolean disconnectFromTcpDevice(ITestDevice tcpDevice)

adb-over-tcp 接続済みデバイスから切断します。

abstract void displayDevicesInfo(PrintWriter printWriter, boolean includeStub)

既知のデバイスとその状態、値のリストを含む、ユーザー フレンドリーな説明を出力します。 よく使用される IDeviceSelection オプションのリスト。

abstract CommandResult executeCmdOnAvailableDevice(String serial, String command, long timeout, TimeUnit timeUnit)

利用可能なデバイスでシェルコマンドを実行するためのヘルパー メソッド。

abstract ITestDevice forceAllocateDevice(String serial)

デバイスが現在利用できない場合でも、不当に割り当てる。

abstract void freeDevice(ITestDevice device, FreeDeviceState state)

デバイスをプールに返却する

割り当てられていないデバイスを返品しようとしても無視されます。

abstract String getAdbPath()

使用する adb バイナリのパスを返します。

abstract String getAdbVersion()

デバイス マネージャーが現在使用している adb バージョンを取得します。

abstract DeviceDescriptor getDeviceDescriptor(String serial)

指定されたシリアルを持つ DeviceDescriptor を返します。

abstract String getFastbootPath()

使用する fastboot バイナリのパスを返します。

abstract void init(IDeviceSelection globalDeviceFilter, deviceMonitors)

デバイス フィルタでデバイス マネージャーを初期化します。

abstract void init()

デバイス マネージャーを初期化します。

abstract boolean isEmulator(String serial)

指定されたシリアルがエミュレータを表しているかどうかを判断する

default boolean isFileSystemMountCheckEnabled()

ファイル システムが NativeDeviceStateMonitor でチェックインされるかどうかを返します。 正しく取り付けられています。

abstract boolean isNullDevice(String serial)

指定されたシリアルが null デバイスを表しているかどうかを判断する

abstract void killEmulator(ITestDevice device)

指定したエミュレータをシャットダウンします。

abstract void launchEmulator(ITestDevice device, long bootTimeout, IRunUtil runUtil, emulatorArgs)

エミュレータを起動するヘルパー メソッド。

abstract listAllDevices(boolean shortDescriptor)

既知のすべてのデバイスの DeviceDescriptors のリストを返します

abstract listAllDevices()

既知のすべてのデバイスの DeviceDescriptors のリストを返します

abstract ITestDevice reconnectDeviceToTcp(ITestDevice usbDevice)

指定された USB デバイスを adb-over-tcp モードに切り替えてから connectToTcpDevice(String) で取得します。

abstract void removeDeviceMonitor(IDeviceMonitor mon)

以前に追加された IDeviceMonitor を削除します。

abstract void removeFastbootListener(IDeviceManager.IFastbootListener listener)

リスナーが fastboot の状態変化にもう関係ないことをマネージャーに通知します。

abstract void restartAdbBridge()

adb ブリッジと adb に依存するサービスを再起動する(stopAdbBridge() が呼び出された場合) 接続します

abstract void stopAdbBridge()

adb ブリッジを停止し、サービスは adb 接続に依存します。

abstract void terminate()

デバイス モニタリング サービスを停止し、ddm ライブラリを終了します。

abstract void terminateDeviceMonitor()

デバイス モニターを停止します。

abstract void terminateDeviceRecovery()

デバイス復元スレッドを停止します。

default void terminateHard(String reason)

terminateHard() など。

abstract void terminateHard()

terminate() に似ていますが、adb も強制的にシャットダウンします。

abstract boolean waitForFirstDeviceAdded(long timeout)

最初の物理デバイスが接続されるまで待ちます。

パブリック メソッド

addDeviceMonitor

public abstract void addDeviceMonitor (IDeviceMonitor mon)

IDeviceMonitor を追加します。

パラメータ
mon IDeviceMonitor

addFastbootListener

public abstract void addFastbootListener (IDeviceManager.IFastbootListener listener)

リスナーが fastboot の状態変化に関心を持っていることをマネージャーに通知します。

現在、IDeviceManager は fastboot 内のデバイスのみを監視します。 アクティブリスナーが増えます

TODO: これはちょっとしたコツです - もっと良い解決策を見つけましょう

addMonitoringTcpFastbootDevice

public abstract void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

fastboot モニターにデバイスを追加します。fastboot モニターは fastboot_serial をから デバイスと通信します。

パラメータ
serial String: デバイスのシリアル番号。

fastboot_serial String: デバイスの fastboot モードのシリアル番号。

allocateDevice

public abstract ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

特定の基準を満たすテスト用デバイスをリクエストします。

パラメータ
options IDeviceSelection: デバイスが満たす必要がある IDeviceSelection

isTemporary boolean: 一時的な NullDevice を作成するかどうか。

戻り値
ITestDevice テスト用の ITestDevice。使用できない場合は null

allocateDevice

public abstract ITestDevice allocateDevice (IDeviceSelection options)

特定の基準を満たすテスト用デバイスをリクエストします。

パラメータ
options IDeviceSelection: デバイスが満たす必要がある IDeviceSelection

戻り値
ITestDevice テスト用の ITestDevice、または存在する場合は null 使用できません

allocateDevice

public abstract ITestDevice allocateDevice ()

テスト用に実機をリクエストする

戻り値
ITestDevice テスト用の ITestDevice。使用できない場合は null

connectToTcpDevice

public abstract ITestDevice connectToTcpDevice (String ipAndPort)

adb-over-tcp でデバイスに接続する

このメソッドで新しいデバイスが割り当てられ、最終的には disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

返された ITestDevice はオンラインですが、応答しない可能性があります。

TCP 接続デバイスで再起動などのアクションを行うと、 デバイスへの TCP 接続が行われ、結果が DeviceNotAvailableException になります。

パラメータ
ipAndPort String: 接続するデバイスの元の IP アドレスとポート

戻り値
ITestDevice TCP 接続が確立できなかった場合は ITestDevice または null

TcpDevice から切断

public abstract boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

adb-over-tcp 接続済みデバイスから切断します。

デバイスを USB モードに戻し、解放します。

パラメータ
tcpDevice ITestDevice: 現在 TCP モードにあるデバイス。以前は connectToTcpDevice(String)

戻り値
boolean USB モードへの切り替えが成功した場合は true

displayDevicesInfo

public abstract void displayDevicesInfo (PrintWriter printWriter, 
                boolean includeStub)

既知のデバイス、その状態、値のリストを含む、ユーザー フレンドリーな説明を出力します。 よく使用される IDeviceSelection オプションのリスト。

パラメータ
printWriter PrintWriter: 説明の出力先となる ERROR(/PrintWriter)

includeStub boolean: スタブデバイスも表示するかどうか。

runCmdOnAvailableDevice

public abstract CommandResult executeCmdOnAvailableDevice (String serial, 
                String command, 
                long timeout, 
                TimeUnit timeUnit)

利用可能なデバイスでシェルコマンドを実行するためのヘルパー メソッド。

パラメータ
serial String: デバイスのシリアル。

command String: シェルコマンド。

timeout long: コマンドが完了するまでの時間。

timeUnit TimeUnit: タイムアウトの単位。

戻り値
CommandResult CommandResult

forceAllocateDevice

public abstract ITestDevice forceAllocateDevice (String serial)

デバイスが現在利用できない場合でも、不当に割り当てる。

デバイスがすでに割り当てられている場合は無視されます。

パラメータ
serial String: 割り当てるデバイス シリアル

戻り値
ITestDevice ITestDevice。割り当てできなかった場合は null

無料デバイス

public abstract void freeDevice (ITestDevice device, 
                FreeDeviceState state)

デバイスをプールに返却する

割り当てられていないデバイスを返品しようとしても無視されます。

パラメータ
device ITestDevice: 解放する ITestDevice

state FreeDeviceState: FreeDeviceState。次の場合に使用 使用可能なデバイスプールに戻されます。

getAdbPath

public abstract String getAdbPath ()

使用する adb バイナリのパスを返します。

戻り値
String

getAdbVersion

public abstract String getAdbVersion ()

デバイス マネージャーが現在使用している adb バージョンを取得します。

戻り値
String

getDeviceDescriptor

public abstract DeviceDescriptor getDeviceDescriptor (String serial)

指定されたシリアルを持つ DeviceDescriptor を返します。

パラメータ
serial String: 取得するデバイスのシリアル番号

戻り値
DeviceDescriptor 選択したデバイスの DeviceDescriptor。シリアルがない場合は null 既知のデバイスと一致する可能性があります。

getFastbootPath

public abstract String getFastbootPath ()

使用する fastboot バイナリのパスを返します。

戻り値
String

init

public abstract void init (IDeviceSelection globalDeviceFilter, 
                 deviceMonitors)

デバイス フィルタでデバイス マネージャーを初期化します。このフィルタを使用して DeviceManager が特定の接続済みデバイスを無視するようにします。

パラメータ
globalDeviceFilter IDeviceSelection: デバイス フィルタ

deviceMonitors

init

public abstract void init ()

デバイス マネージャーを初期化します。これは、他のどの関数よりも前に 1 回だけ呼び出す必要があります。 メソッドが呼び出されます。

isEmulator

public abstract boolean isEmulator (String serial)

特定のシリアルがエミュレータを表しているかどうかを判断する

パラメータ
serial String

戻り値
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

ファイル システムが NativeDeviceStateMonitor でチェックインされるかどうかを返します。 正しく取り付けられています。

戻り値
boolean

isNullDevice

public abstract boolean isNullDevice (String serial)

指定されたシリアルが null デバイスを表しているかどうかを判断する

パラメータ
serial String

戻り値
boolean

エミュレータを強制終了する

public abstract void killEmulator (ITestDevice device)

指定したエミュレータをシャットダウンします。

エミュレータが adb から消えるまでブロックします。エミュレータがクライアント デバイスにインストールされていない場合、 できます。

パラメータ
device ITestDevice: シャットダウンするエミュレータを表す ITestDevice

例外
DeviceNotAvailableException エミュレータがシャットダウンに失敗した場合

launchEmulator

public abstract void launchEmulator (ITestDevice device, 
                long bootTimeout, 
                IRunUtil runUtil, 
                 emulatorArgs)

エミュレータを起動するヘルパー メソッド。

呼び出し元が指定したとおりにエミュレータを起動します。

パラメータ
device ITestDevice: 割り当てられたエミュレータ デバイスを表すプレースホルダ ITestDevice

bootTimeout long: エミュレータの起動を待機する時間(ミリ秒)

emulatorArgs : エミュレータを起動するコマンドライン引数

例外
DeviceNotAvailableException エミュレータの起動に失敗した場合やオンラインになった場合

listAllDevices

public abstract  listAllDevices (boolean shortDescriptor)

既知のすべてのデバイスの DeviceDescriptors のリストを返します

パラメータ
shortDescriptor boolean: 記述子を最小限の情報に制限するかどうか

戻り値
既知のすべてのデバイスに対する DeviceDescriptor のリスト

listAllDevices

public abstract  listAllDevices ()

既知のすべてのデバイスの DeviceDescriptors のリストを返します

戻り値
既知のすべてのデバイスに対する DeviceDescriptor のリスト

RedisDeviceToTcp

public abstract ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

指定された USB デバイスを adb-over-tcp モードに切り替えてから connectToTcpDevice(String) で取得します。

パラメータ
usbDevice ITestDevice: 現在 USB モードになっているデバイス

戻り値
ITestDevice TCP モードの場合は新しく割り当てられた ITestDevice。TCP の場合は null 接続を確立できませんでした

例外
DeviceNotAvailableException usbDevice との接続が切断され、 復元できませんでした

deleteDeviceMonitor

public abstract void removeDeviceMonitor (IDeviceMonitor mon)

以前に追加された IDeviceMonitor を削除します。mon が追加されていない場合は機能しません。

パラメータ
mon IDeviceMonitor

FastbootListener を削除

public abstract void removeFastbootListener (IDeviceManager.IFastbootListener listener)

リスナーが fastboot の状態変化にもう関係ないことをマネージャーに通知します。

restartAdbBridge

public abstract void restartAdbBridge ()

adb ブリッジと adb に依存するサービスを再起動する(stopAdbBridge() が呼び出された場合) 接続します

stopAdbBridge

public abstract void stopAdbBridge ()

adb ブリッジを停止し、サービスは adb 接続に依存します。

おしまい 終了 終わり

public abstract void terminate ()

デバイス モニタリング サービスを停止し、ddm ライブラリを終了します。

これは、アプリケーションの終了時に呼び出す必要があります。

terminateDeviceMonitor

public abstract void terminateDeviceMonitor ()

デバイス モニターを停止します。

terminateDeviceRecovery

public abstract void terminateDeviceRecovery ()

デバイス復元スレッドを停止します。

終了ハード

public void terminateHard (String reason)

terminateHard() など。

パラメータ
reason String: 終了の理由(省略可)。

終了ハード

public abstract void terminateHard ()

terminate() に似ていますが、adb も強制的にシャットダウンします。

waitForFirstDeviceAdded

public abstract boolean waitForFirstDeviceAdded (long timeout)

最初の物理デバイスが接続されるまで待ちます。以前に接続していたデバイスは、 は直接 True を返します。デバイスが追加されていない場合は、タイムアウト後に false を返します。

パラメータ
timeout long: false を返すまでの待機時間(ミリ秒単位)。

戻り値
boolean