Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

IDeviceManager

public interface IDeviceManager

com.android.tradefed.device.IDeviceManager


用於管理一組可用設備進行測試的界面。

概要

嵌套類

interface IDeviceManager.IFastbootListener

快速啟動狀態更改的偵聽器。

公開方法

abstract void addDeviceMonitor ( IDeviceMonitor mon)

添加一個IDeviceMonitor

abstract void addFastbootListener ( IDeviceManager.IFastbootListener listener)

通知管理器偵聽器對快速啟動狀態更改感興趣。

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 ITestDevice forceAllocateDevice (String serial)

粗略分配設備,即使它當前不可用。

abstract void freeDevice (ITestDevice device, FreeDeviceState state)

將設備退回池

嘗試返回之前未分配的設備的嘗試將被忽略。

abstract String getAdbPath ()

返回要使用的adb二進製文件的路徑。

abstract String getAdbVersion ()

獲取設備管理器當前正在使用的adb版本。

abstract int getAvailableFlashingPermits ()

獲取可用的閃光燈許可證數量

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)

確定給定的序列是否代表仿真器

abstract boolean isNullDevice (String serial)

確定給定的序列是否代表空設備

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

返回所有已知設備的DeviceDescriptor列表

abstract ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

一種幫助程序方法,將給定的USB設備切換到adb-over-tcp模式,然後通過connectToTcpDevice(String)連接到它。

abstract void removeDeviceMonitor ( IDeviceMonitor mon)

刪除以前添加的IDeviceMonitor

abstract void removeFastbootListener ( IDeviceManager.IFastbootListener listener)

通知管理器,偵聽器不再對快速啟動狀態更改感興趣。

abstract void restartAdbBridge ()

重新啟動(如果stopAdbBridge() )adb網橋,並且服務取決於adb連接。

abstract void returnFlashingPermit ()

恢復我們之前獲得的閃光許可證

abstract void stopAdbBridge ()

停止adb橋接,服務取決於adb連接。

abstract void takeFlashingPermit ()

請求閃光許可。

abstract void terminate ()

停止設備監視服務,並終止ddm庫。

abstract void terminateDeviceMonitor ()

停止設備監視器。

abstract void terminateDeviceRecovery ()

停止設備恢復線程。

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)

通知管理器偵聽器對快速啟動狀態更改感興趣。

當前,如果有一個或多個活動的偵聽器,則IDeviceManager僅監視快速啟動中的設備。

待辦事項:這有點hack-尋找更好的解決方案

分配設備

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

connectToTcpDevice

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連接,則ITestDevice null

offlineFromTcpDevice

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 :是否也顯示存根設備。

forceAllocateDevice

public abstract ITestDevice forceAllocateDevice (String serial)

粗略分配設備,即使該設備當前不可用。

如果已經分配了設備,則將無效。

參量
serial String :要分配的設備序列號

退貨
ITestDevice ITestDevice ;如果無法分配,則ITestDevice null

freeDevice

public abstract void freeDevice (ITestDevice device, 
                FreeDeviceState state)

將設備退回池

嘗試返回之前未分配的設備的嘗試將被忽略。

參量
device ITestDevice :要釋放的ITestDevice

state FreeDeviceStateFreeDeviceState 。用於控制設備是否返回到可用設備池。

getAdbPath

public abstract String getAdbPath ()

返回要使用的adb二進製文件的路徑。

退貨
String

getAdbVersion

public abstract String getAdbVersion ()

獲取設備管理器當前正在使用的adb版本。

退貨
String

getAvailableFlashingPermits

public abstract int getAvailableFlashingPermits ()

獲取可用的閃光燈許可證數量

退貨
int可用的閃爍許可數或Integer.MAX_VALUE(如果不可用)。

getDeviceDescriptor

public abstract DeviceDescriptor getDeviceDescriptor (String serial)

返回具有給定序列號的DeviceDescriptor。

參量
serial String :設備獲取的序列號

退貨
DeviceDescriptor所選設備的DeviceDescriptor ;如果序列與已知設備不匹配,則返回null。

getFastbootPath

public abstract String getFastbootPath ()

返回要使用的fastboot二進製文件的路徑。

退貨
String

在裡面

public abstract void init (IDeviceSelection globalDeviceFilter, 
                 deviceMonitors)

使用設備篩選器初始化設備管理器。該過濾器可用於指示DeviceManager忽略某些已連接的設備。

參量
globalDeviceFilter IDeviceSelection :設備過濾器

deviceMonitors

在裡面

public abstract void init ()

初始化設備管理器。必須先調用一次,然後再調用一次其他方法。

isEmulator

public abstract boolean isEmulator (String serial)

確定給定的序列是否代表仿真器

參量
serial String

退貨
boolean

isNullDevice

public abstract boolean isNullDevice (String serial)

確定給定的序列是否代表空設備

參量
serial String

退貨
boolean

killEmulator

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

返回所有已知設備的DeviceDescriptor列表

退貨
所有已知設備的DeviceDescriptor列表

reconnectDeviceToTcp

public abstract ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

一種幫助程序方法,將給定的USB設備切換到adb-over-tcp模式,然後通過connectToTcpDevice(String)連接到它。

參量
usbDevice ITestDevice :當前處於USB模式的設備

退貨
ITestDevice在tcp模式下新分配的ITestDevice ;如果無法形成tcp連接,則返回null

投擲
DeviceNotAvailableException如果與usbDevice的連接丟失並且無法恢復

removeDeviceMonitor

public abstract void removeDeviceMonitor (IDeviceMonitor mon)

刪除以前添加的IDeviceMonitor 。如果未添加mon,則無效。

參量
mon IDeviceMonitor

removeFastbootListener

public abstract void removeFastbootListener (IDeviceManager.IFastbootListener listener)

通知管理器,偵聽器不再對快速啟動狀態更改感興趣。

restartAdbBridge

public abstract void restartAdbBridge ()

重新啟動(如果stopAdbBridge() )adb網橋,並且服務取決於adb連接。

returnFlashingPermit

public abstract void returnFlashingPermit ()

恢復我們之前獲得的閃光許可證

stopAdbBridge

public abstract void stopAdbBridge ()

停止adb橋接,服務取決於adb連接。

takeFlashingPermit

public abstract void takeFlashingPermit ()

請求閃光許可。如果並發閃光燈的數量受到限制,則它將排隊等待,以保持在閃光燈限制計數之下。

終止

public abstract void terminate ()

停止設備監視服務,並終止ddm庫。

必須在應用程序終止時調用它。

也可以看看:

TerminateDeviceMonitor

public abstract void terminateDeviceMonitor ()

停止設備監視器。

TerminateDeviceRecovery

public abstract void terminateDeviceRecovery ()

停止設備恢復線程。

終止硬

public abstract void terminateHard ()

類似於terminate() ,但也嘗試強制關閉adb。

waitForFirstDeviceAdded

public abstract boolean waitForFirstDeviceAdded (long timeout)

等待直到連接了第一台物理設備。如果以前連接過設備,它將直接返回True。如果未添加任何設備,則超時後返回false。

參量
timeout long :返回false之前等待的時間(以毫秒為單位)。

退貨
boolean