デバイスマネージャ

public class DeviceManager
extends Object implements IDeviceManager

java.lang.オブジェクト
com.android.tradefed.device.DeviceManager


まとめ

入れ子になったクラス

class DeviceManager.FastbootDevice

Fastboot モードのデバイスの表現。

田畑

public static final String UNKNOWN_DISPLAY_STRING

不明なプロパティの文字列を表示する

protected DeviceMonitorMultiplexer mDvcMon

protected boolean mFastbootEnabled

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

DeviceManager ()

DeviceManager はGlobalConfigurationから取得する必要があります。

パブリックメソッド

void addAvailableDevice (IDevice stubDevice)
void addDeviceMonitor ( IDeviceMonitor mon)

IDeviceMonitorを追加します

void addFastbootDevice ( DeviceManager.FastbootDevice fastbootDevice)
void addFastbootListener ( IDeviceManager.IFastbootListener listener)

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

void addMonitoringTcpFastbootDevice (String serial, String fastboot_serial)

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

ITestDevice allocateDevice ( IDeviceSelection options, boolean isTemporary)

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

ITestDevice allocateDevice ( IDeviceSelection options)

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

ITestDevice allocateDevice ()

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

ITestDevice connectToTcpDevice (String ipAndPort)

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

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

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

boolean disconnectFromTcpDevice ( ITestDevice tcpDevice)

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

void displayDevicesInfo (PrintWriter stream, boolean includeStub)

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

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

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

String executeGlobalAdbCommand (String... cmdArgs)

特定のデバイスを対象としない adb コマンドを実行します。

ITestDevice forceAllocateDevice (String serial)

現在利用できない場合でも、デバイスを乱暴に割り当てます。

void freeDevice ( ITestDevice device, FreeDeviceState deviceState)

デバイスをプールに戻す

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

String getAdbPath ()

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

String getAdbVersion ()

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

DeviceDescriptor getDeviceDescriptor (String serial)

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

String getFastbootPath ()

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

void init ( IDeviceSelection globalDeviceFilter, globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory) init ( IDeviceSelection globalDeviceFilter, globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory)

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

void init ( IDeviceSelection globalDeviceFilter, globalDeviceMonitors) init ( IDeviceSelection globalDeviceFilter, globalDeviceMonitors)

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

void init ()

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

boolean isEmulator (String serial)

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

boolean isFileSystemMountCheckEnabled ()

NativeDeviceStateMonitorでファイル システムが適切にマウントされていることを確認する必要があるかどうかを返します。

boolean isNullDevice (String serial)

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

void killEmulator ( ITestDevice device)

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

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

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

listAllDevices (boolean shortDescriptor)

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

listAllDevices ()

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

ITestDevice reconnectDeviceToTcp ( ITestDevice usbDevice)

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

void removeDeviceMonitor ( IDeviceMonitor mon)

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

void removeFastbootListener ( IDeviceManager.IFastbootListener listener)

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

void restartAdbBridge ()

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

void stopAdbBridge ()

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

void terminate ()

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

void terminateDeviceMonitor ()

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

void terminateDeviceRecovery ()

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

void terminateHard (String reason)

terminateHard()と同様です。

void terminateHard ()

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

boolean waitForFirstDeviceAdded (long timeout)

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

田畑

UNKNOWN_DISPLAY_STRING

public static final String UNKNOWN_DISPLAY_STRING

不明なプロパティの文字列を表示する

mDvcMon

protected DeviceMonitorMultiplexer mDvcMon

mFastboot有効

protected boolean mFastbootEnabled

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

デバイスマネージャ

public DeviceManager ()

DeviceManager はGlobalConfigurationから取得する必要があります。

パブリックメソッド

addAvailableDevice

public void addAvailableDevice (IDevice stubDevice)

パラメーター
stubDevice IDevice

デバイスモニターの追加

public void addDeviceMonitor (IDeviceMonitor mon)

IDeviceMonitorを追加します

パラメーター
mon IDeviceMonitor

addFastbootDevice

public void addFastbootDevice (DeviceManager.FastbootDevice fastbootDevice)

パラメーター
fastbootDevice DeviceManager.FastbootDevice

追加FastbootListener

public void addFastbootListener (IDeviceManager.IFastbootListener listener)

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

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

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

addMonitoringTcpFastbootDevice

public void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

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

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

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

デバイスの割り当て

public ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

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

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

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

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

デバイスの割り当て

public ITestDevice allocateDevice (IDeviceSelection options)

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

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

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

デバイスの割り当て

public ITestDevice allocateDevice ()

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

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

TcpDevice に接続

public 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 boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

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

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

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

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

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

public void displayDevicesInfo (PrintWriter stream, 
                boolean includeStub)

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

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

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

executeCmdOnAvailableDevice

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

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

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

command String : シェルコマンド。

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

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

戻り値
CommandResult CommandResult

executeGlobalAdbCommand

public String executeGlobalAdbCommand (String... cmdArgs)

特定のデバイスを対象としない adb コマンドを実行します。 「adb接続」

戻り値
Stringコマンドが成功した場合は std 出力、そうでない場合は null。

ForceAllocateDevice

public ITestDevice forceAllocateDevice (String serial)

現在利用できない場合でも、デバイスを乱暴に割り当てます。

デバイスがすでに割り当てられている場合は効果がありません。

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

戻り値
ITestDevice ITestDevice 、または割り当てられなかった場合はnull

フリーデバイス

public void freeDevice (ITestDevice device, 
                FreeDeviceState deviceState)

デバイスをプールに戻す

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

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

deviceState FreeDeviceState : FreeDeviceState 。デバイスを使用可能なデバイス プールに戻すかどうかを制御するために使用されます。

getAdbPath

public String getAdbPath ()

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

戻り値
String

getAdbVersion

public String getAdbVersion ()

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

戻り値
String

getDeviceDescriptor

public DeviceDescriptor getDeviceDescriptor (String serial)

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

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

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

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

public String getFastbootPath ()

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

戻り値
String

初期化

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors, 
                IManagedTestDeviceFactory deviceFactory)

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

パラメーター
globalDeviceFilter IDeviceSelection

globalDeviceMonitors

deviceFactory IManagedTestDeviceFactory

初期化

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors)

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

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

globalDeviceMonitors

初期化

public void init ()

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

エミュレータ

public boolean isEmulator (String serial)

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

パラメーター
serial String

戻り値
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

NativeDeviceStateMonitorでファイル システムが適切にマウントされていることを確認する必要があるかどうかを返します。

戻り値
boolean

isNullDevice

public boolean isNullDevice (String serial)

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

パラメーター
serial String

戻り値
boolean

エミュレータを殺す

public void killEmulator (ITestDevice device)

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

エミュレータが adb から消えるまでブロックします。エミュレータがすでに利用できない場合は効果がありません。

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

投げる
DeviceNotAvailableException

エミュレータの起動

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

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

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

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

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

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

投げる
DeviceNotAvailableException

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

public  listAllDevices (boolean shortDescriptor)

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

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

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

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

public  listAllDevices ()

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

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

DeviceToTcp に再接続します

public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

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

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

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

投げる
DeviceNotAvailableException

デバイスモニターの削除

public void removeDeviceMonitor (IDeviceMonitor mon)

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

パラメーター
mon IDeviceMonitor

削除FastbootListener

public void removeFastbootListener (IDeviceManager.IFastbootListener listener)

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

AdbBridgeを再起動します

public void restartAdbBridge ()

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

停止Adbブリッジ

public void stopAdbBridge ()

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

終了する

public void terminate ()

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

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

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

public void terminateDeviceMonitor ()

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

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

public void terminateDeviceRecovery ()

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

終了ハード

public void terminateHard (String reason)

terminateHard()と同様です。

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

終了ハード

public void terminateHard ()

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

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

public boolean waitForFirstDeviceAdded (long timeout)

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

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

戻り値
boolean