IDデバイスマネージャー

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) 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) launchEmulator ( ITestDevice device, long bootTimeout, IRunUtil runUtil, emulatorArgs)

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

abstract listAllDevices (boolean shortDescriptor)

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

abstract listAllDevices ()

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

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 ()

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

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)

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

パブリックメソッド

デバイスモニターの追加

public abstract void addDeviceMonitor (IDeviceMonitor mon)

IDeviceMonitorを追加します

パラメーター
mon IDeviceMonitor

追加FastbootListener

public abstract void addFastbootListener (IDeviceManager.IFastbootListener listener)

リスナーが fastboot 状態の変更に関心があることをマネージャーに通知します。

現在、 IDeviceManager 1 つ以上のアクティブなリスナーがある場合に、fastboot でデバイスを監視するだけです。

TODO: これはちょっとしたハックです - より良い解決策を見つけてください

addMonitoringTcpFastbootDevice

public abstract void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

fastboot モニターにデバイスを追加します。 fastboot モニターは、「fastboot_serial」を使用してデバイスと通信します。

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

fastboot_serial String : デバイスの高速ブート モードのシリアル番号。

デバイスの割り当て

public abstract ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

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

パラメーター
options IDeviceSelection : デバイスが満たすべきIDeviceSelection

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

戻り値
ITestDeviceテスト用のITestDevice 、または利用できない場合はnull

デバイスの割り当て

public abstract ITestDevice allocateDevice (IDeviceSelection options)

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

パラメーター
options IDeviceSelection : デバイスが満たすべきIDeviceSelection

戻り値
ITestDeviceテスト用のITestDevice 、または利用できない場合はnull

デバイスの割り当て

public abstract ITestDevice allocateDevice ()

テスト用の物理デバイスをリクエストする

戻り値
ITestDeviceテスト用のITestDevice 、または利用できない場合はnull

TcpDevice に接続

public abstract ITestDevice connectToTcpDevice (String ipAndPort)

adb-over-tcp を使用してデバイスに接続する

このメソッドは新しいデバイスを割り当てますが、最終的にはdisconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)によって解放される必要があります。

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

TCP 接続されたデバイスで再起動などのアクションを実行すると、デバイスへの TCP 接続が切断され、 DeviceNotAvailableExceptionが発生することに注意してください。

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

戻り値
ITestDevice ITestDevice 、または TCP 接続を形成できなかった場合はnull

TcpDevice から切断

public abstract boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

adb-over-tcp に接続されているデバイスから切断します。

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

パラメーター
tcpDevice ITestDevice : 現在 tcp モードにあり、以前にconnectToTcpDevice(String)によって割り当てられたデバイス

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

ディスプレイデバイス情報

public abstract void displayDevicesInfo (PrintWriter printWriter, 
                boolean includeStub)

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

パラメーター
printWriter PrintWriter : 説明を出力するためのERROR(/PrintWriter)

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

executeCmdOnAvailableDevice

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。

ファストブートパスの取得

public abstract String getFastbootPath ()

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

戻り値
String

初期化

public abstract void init (IDeviceSelection globalDeviceFilter, 
                 deviceMonitors)

デバイス フィルターを使用してデバイス マネージャーを初期化します。このフィルターを使用して、DeviceManager に特定の接続されたデバイスを無視するように指示できます。

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

deviceMonitors

初期化

public abstract void init ()

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

エミュレータ

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エミュレータがシャットダウンに失敗した場合

エミュレータの起動

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

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

呼び出し元の指定に従ってエミュレータを起動します

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

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

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

投げる
DeviceNotAvailableExceptionエミュレータが起動できない場合、またはオンラインにならない場合

すべてのデバイスのリスト

public abstract  listAllDevices (boolean shortDescriptor)

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

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

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

すべてのデバイスのリスト

public abstract  listAllDevices ()

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

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

DeviceToTcp に再接続します

public abstract ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

指定された USB デバイスを adb-over-tcp モードに切り替え、 connectToTcpDevice(String)経由で接続するヘルパー メソッド。

パラメーター
usbDevice ITestDevice : 現在 USB モードにあるデバイス

戻り値
ITestDevice TCP モードで新しく割り当てられたITestDevice 、または TCP 接続を形成できなかった場合はnull

投げる
DeviceNotAvailableException usbDeviceとの接続が失われて回復できなかった場合

デバイスモニターの削除

public abstract void removeDeviceMonitor (IDeviceMonitor mon)

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

パラメーター
mon IDeviceMonitor

削除FastbootListener

public abstract void removeFastbootListener (IDeviceManager.IFastbootListener listener)

リスナーが fastboot 状態の変更に関心を持たなくなったことをマネージャーに通知します。

AdbBridgeを再起動します

public abstract void restartAdbBridge ()

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

停止Adbブリッジ

public abstract void stopAdbBridge ()

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

終了する

public abstract void terminate ()

デバイス監視サービスを停止し、ddm ライブラリを終了します。

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

以下も参照してください。

デバイスモニターを終了する

public abstract void terminateDeviceMonitor ()

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

デバイスの回復を終了する

public abstract void terminateDeviceRecovery ()

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

終了ハード

public void terminateHard (String reason)

terminateHard()と同様です。

パラメーター
reason String : 終了の理由 (オプション)。

終了ハード

public abstract void terminateHard ()

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

最初のデバイス追加を待つ

public abstract boolean waitForFirstDeviceAdded (long timeout)

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

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

戻り値
boolean