Trình quản lý thiết bị

public class DeviceManager
extends Object implements IDeviceManager

java.lang.Object
   ↳ com.android.tradefed.device.DeviceManager


Tóm tắt

Lớp lồng ghép

class DeviceManager.FastbootDevice

Hình minh hoạ một thiết bị ở Chế độ khởi động nhanh (Fastboot mode). 

Trường

public static final String UNKNOWN_DISPLAY_STRING

Chuỗi hiển thị cho các thuộc tính không xác định

protected DeviceMonitorMultiplexer mDvcMon

protected boolean mFastbootEnabled

Hàm khởi tạo công khai

DeviceManager()

DeviceManager sẽ được truy xuất từ GlobalConfiguration

Phương thức công khai

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

Thêm một IDeviceMonitor

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

Thông báo cho người quản lý rằng trình nghe quan tâm đến các thay đổi trạng thái khởi động nhanh.

void addMonitoringTcpFastbootDevice(String serial, String fastboot_serial)

Thêm một thiết bị vào màn hình khởi động nhanh.

ITestDevice allocateDevice(IDeviceSelection options, boolean isTemporary)

Yêu cầu một thiết bị đáp ứng các tiêu chí nhất định để thử nghiệm.

ITestDevice allocateDevice(IDeviceSelection options)

Yêu cầu một thiết bị đáp ứng các tiêu chí nhất định để thử nghiệm.

ITestDevice allocateDevice()

Yêu cầu một thiết bị thực để kiểm thử

ITestDevice connectToTcpDevice(String ipAndPort)

Kết nối với một thiết bị bằng adb-over-tcp

Phương thức này phân bổ một thiết bị mới mà cuối cùng sẽ được giải phóng qua disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

ITestDevice được trả về sẽ có kết nối mạng nhưng có thể không phản hồi.

boolean disconnectFromTcpDevice(ITestDevice tcpDevice)

Ngắt kết nối khỏi một thiết bị được kết nối adb-over-tcp.

void displayDevicesInfo(PrintWriter stream, boolean includeStub)

Đưa ra nội dung mô tả thân thiện với người dùng, trong đó có danh sách các thiết bị đã biết, trạng thái và giá trị của thiết bị cho các tuỳ chọn IDeviceSelection thường dùng.

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

Một phương thức trợ giúp để thực thi lệnh shell trên thiết bị có sẵn.

String executeGlobalAdbCommand(String... cmdArgs)

Thực thi lệnh adb không được nhắm mục tiêu đến một thiết bị cụ thể, ví dụ:

ITestDevice forceAllocateDevice(String serial)

Phân bổ thô lỗ thiết bị, ngay cả khi thiết bị hiện không có sẵn.

void freeDevice(ITestDevice device, FreeDeviceState deviceState)

Trả thiết bị lại hồ bơi

Hệ thống sẽ bỏ qua các lượt cố gắng trả về một thiết bị chưa được phân bổ trước đó.

String getAdbPath()

Trả về đường dẫn đến tệp nhị phân adb để sử dụng.

String getAdbVersion()

Tải phiên bản adb mà trình quản lý thiết bị đang sử dụng.

DeviceDescriptor getDeviceDescriptor(String serial)

Trả về DeviceDescriptor theo sê-ri đã cho.

String getFastbootPath()

Trả về đường dẫn đến tệp nhị phân khởi động nhanh để sử dụng.

void init(IDeviceSelection globalDeviceFilter, globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory)

Khởi chạy trình quản lý thiết bị.

void init(IDeviceSelection globalDeviceFilter, globalDeviceMonitors)

Khởi chạy trình quản lý thiết bị.

void init()

Khởi chạy trình quản lý thiết bị.

boolean isEmulator(String serial)

Xác định xem sê-ri đã cho có đại diện cho một trình mô phỏng hay không

boolean isFileSystemMountCheckEnabled()

Trả về việc chúng ta có nên kiểm tra trong NativeDeviceStateMonitor hệ thống tệp hay không được gắn đúng cách.

boolean isNullDevice(String serial)

Xác định xem nối tiếp đã cho có đại diện cho một thiết bị rỗng hay không

void killEmulator(ITestDevice device)

Tắt trình mô phỏng đã cho.

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

Phương thức trợ giúp để chạy trình mô phỏng.

listAllDevices(boolean shortDescriptor)

Trả về danh sách DeviceDescriptor cho mọi thiết bị đã biết

listAllDevices()

Trả về danh sách DeviceDescriptor cho mọi thiết bị đã biết

ITestDevice reconnectDeviceToTcp(ITestDevice usbDevice)

Một phương thức trợ giúp sẽ chuyển thiết bị USB đã cho sang chế độ adb-over-tcp, sau đó kết nối với nó qua connectToTcpDevice(String).

void removeDeviceMonitor(IDeviceMonitor mon)

Xoá IDeviceMonitor đã thêm trước đó.

void removeFastbootListener(IDeviceManager.IFastbootListener listener)

Thông báo cho người quản lý rằng trình nghe không còn quan tâm đến các thay đổi về trạng thái khởi động nhanh.

void restartAdbBridge()

Khởi động lại (nếu stopAdbBridge() được gọi) cầu nối và dịch vụ adb phụ thuộc vào adb kết nối.

void stopAdbBridge()

Dừng cầu nối và dịch vụ adb phụ thuộc vào các kết nối adb.

void terminate()

Dừng các dịch vụ giám sát thiết bị và chấm dứt thư viện ddm.

void terminateDeviceMonitor()

Dừng màn hình thiết bị.

void terminateDeviceRecovery()

Dừng chuỗi khôi phục thiết bị.

void terminateHard(String reason)

Tương tự như terminateHard().

void terminateHard()

Giống như terminate(), nhưng cũng cố gắng tắt adb.

boolean waitForFirstDeviceAdded(long timeout)

Chờ cho đến khi thiết bị thực đầu tiên được kết nối.

Trường

KHÔNG XÁC ĐỊNH_HIỂN THỊ_STRING

public static final String UNKNOWN_DISPLAY_STRING

Chuỗi hiển thị cho các thuộc tính không xác định

mDvcMon

protected DeviceMonitorMultiplexer mDvcMon

mFastbootEnabled

protected boolean mFastbootEnabled

Hàm khởi tạo công khai

Trình quản lý thiết bị

public DeviceManager ()

DeviceManager sẽ được truy xuất từ GlobalConfiguration

Phương thức công khai

thêmThiết bị có sẵn

public void addAvailableDevice (IDevice stubDevice)

Tham số
stubDevice IDevice

addDeviceMonitor

public void addDeviceMonitor (IDeviceMonitor mon)

Thêm một IDeviceMonitor

Tham số
mon IDeviceMonitor

ThêmKhởi động nhanhThiết bị

public void addFastbootDevice (DeviceManager.FastbootDevice fastbootDevice)

Tham số
fastbootDevice DeviceManager.FastbootDevice

addFastbootListener

public void addFastbootListener (IDeviceManager.IFastbootListener listener)

Thông báo cho người quản lý rằng trình nghe quan tâm đến các thay đổi trạng thái khởi động nhanh.

Hiện tại, IDeviceManager sẽ chỉ giám sát thiết bị trong chế độ khởi động nhanh nếu có một hoặc những người nghe tích cực hơn.

VIỆC CẦN LÀM: đây là một mẹo vặt - tìm giải pháp tốt hơn

addMonitoringTcpFastbootDevice

public void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

Thêm một thiết bị vào màn hình khởi động nhanh. Màn hình khởi động nhanh sẽ sử dụng "fastboot_serial" đến giao tiếp với thiết bị.

Tham số
serial String: số sê-ri của thiết bị.

fastboot_serial String: số sê-ri của chế độ khởi động nhanh của thiết bị.

phân bổ thiết bị

public ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

Yêu cầu một thiết bị đáp ứng các tiêu chí nhất định để thử nghiệm.

Tham số
options IDeviceSelection: IDeviceSelection mà thiết bị phải đáp ứng.

isTemporary boolean: có nên tạo NullDevice tạm thời hay không.

Giá trị trả về
ITestDevice ITestDevice để thử nghiệm hoặc null nếu không có sẵn

phân bổ thiết bị

public ITestDevice allocateDevice (IDeviceSelection options)

Yêu cầu một thiết bị đáp ứng các tiêu chí nhất định để thử nghiệm.

Tham số
options IDeviceSelection: IDeviceSelection mà thiết bị phải đáp ứng.

Giá trị trả về
ITestDevice ITestDevice để thử nghiệm hoặc null nếu có không có

phân bổ thiết bị

public ITestDevice allocateDevice ()

Yêu cầu một thiết bị thực để kiểm thử

Giá trị trả về
ITestDevice ITestDevice để thử nghiệm hoặc null nếu không có sẵn

kết nối vớiTcpDevice

public ITestDevice connectToTcpDevice (String ipAndPort)

Kết nối với một thiết bị bằng adb-over-tcp

Phương thức này phân bổ một thiết bị mới mà cuối cùng sẽ được giải phóng qua disconnectFromTcpDevice(com.android.tradefed.device.ITestDevice)

ITestDevice được trả về sẽ có kết nối mạng nhưng có thể không phản hồi.

Xin lưu ý rằng việc thực hiện hành động như khởi động lại trên thiết bị đã kết nối tcp sẽ cắt kết nối tcp với thiết bị, dẫn đến lỗi DeviceNotAvailableException

Tham số
ipAndPort String: địa chỉ IP và cổng ban đầu của thiết bị để kết nối

Giá trị trả về
ITestDevice ITestDevice hoặc null nếu không thể tạo kết nối tcp

ngắt kết nốiFromTcpDevice

public boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

Ngắt kết nối khỏi một thiết bị được kết nối adb-over-tcp.

Chuyển thiết bị về chế độ USB và giải phóng thiết bị.

Tham số
tcpDevice ITestDevice: thiết bị hiện ở chế độ tcp, đã được phân bổ trước đó qua connectToTcpDevice(String)

Giá trị trả về
boolean true nếu chuyển thành công sang chế độ USB

hiển thịThiết bị

public void displayDevicesInfo (PrintWriter stream, 
                boolean includeStub)

Đưa ra nội dung mô tả thân thiện với người dùng, trong đó có danh sách các thiết bị đã biết, trạng thái và giá trị của thiết bị cho các tuỳ chọn IDeviceSelection thường dùng.

Tham số
stream PrintWriter: ERROR(/PrintWriter) để xuất nội dung mô tả thành

includeStub boolean: Có hiển thị cả các thiết bị giả lập hay không.

thực thiCmdOnAvailableDevice

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

Một phương thức trợ giúp để thực thi lệnh shell trên thiết bị có sẵn.

Tham số
serial String: sê-ri thiết bị.

command String: Lệnh shell.

timeout long: Khoảng thời gian để lệnh hoàn tất.

timeUnit TimeUnit: Đơn vị của thời gian chờ.

Giá trị trả về
CommandResult CommandResult.

Thực thiGlobalAdbCommand

public String executeGlobalAdbCommand (String... cmdArgs)

Thực thi lệnh adb không được nhắm mục tiêu đến một thiết bị cụ thể, ví dụ: 'adb connect'

Giá trị trả về
String std nếu lệnh thành công có giá trị rỗng.

forcePhân bổ thiết bị

public ITestDevice forceAllocateDevice (String serial)

Phân bổ thô lỗ thiết bị, ngay cả khi thiết bị hiện không có sẵn.

Sẽ không có hiệu lực nếu thiết bị đã được phân bổ.

Tham số
serial String: nối tiếp thiết bị để phân bổ

Giá trị trả về
ITestDevice ITestDevice hoặc null nếu không thể phân bổ

thiết bị miễn phí

public void freeDevice (ITestDevice device, 
                FreeDeviceState deviceState)

Trả thiết bị lại hồ bơi

Hệ thống sẽ bỏ qua các lượt cố gắng trả về một thiết bị chưa được phân bổ trước đó.

Tham số
device ITestDevice: ITestDevice để giải phóng

deviceState FreeDeviceState: FreeDeviceState. Dùng để kiểm soát việc thiết bị sẽ được đưa trở lại nhóm thiết bị hiện có.

getAdbPath

public String getAdbPath ()

Trả về đường dẫn đến tệp nhị phân adb để sử dụng.

Giá trị trả về
String

getAdbVersion

public String getAdbVersion ()

Tải phiên bản adb mà trình quản lý thiết bị đang sử dụng.

Giá trị trả về
String

getDeviceDescriptor

public DeviceDescriptor getDeviceDescriptor (String serial)

Trả về DeviceDescriptor theo sê-ri đã cho.

Tham số
serial String: số sê-ri để nhận thiết bị

Giá trị trả về
DeviceDescriptor DeviceDescriptor dành cho thiết bị đã chọn hoặc rỗng nếu không khớp với một thiết bị đã biết.

getFastbootPath

public String getFastbootPath ()

Trả về đường dẫn đến tệp nhị phân khởi động nhanh để sử dụng.

Giá trị trả về
String

khởi tạo

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

Khởi chạy trình quản lý thiết bị. Bạn chỉ được gọi lệnh này một lần và chỉ được thực hiện trước bất kỳ lệnh gọi nào khác được gọi.

Tham số
globalDeviceFilter IDeviceSelection

globalDeviceMonitors

deviceFactory IManagedTestDeviceFactory

khởi tạo

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors)

Khởi chạy trình quản lý thiết bị. Bạn chỉ được gọi lệnh này một lần và chỉ được thực hiện trước bất kỳ lệnh gọi nào khác được gọi.

Tham số
globalDeviceFilter IDeviceSelection: bộ lọc thiết bị

globalDeviceMonitors

khởi tạo

public void init ()

Khởi chạy trình quản lý thiết bị. Bạn chỉ được gọi lệnh này một lần và chỉ được thực hiện trước bất kỳ lệnh gọi nào khác được gọi.

isEmulator

public boolean isEmulator (String serial)

Xác định xem sê-ri đã cho có đại diện cho một trình mô phỏng hay không

Tham số
serial String

Giá trị trả về
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

Trả về việc chúng ta có nên kiểm tra trong NativeDeviceStateMonitor hệ thống tệp hay không được gắn đúng cách.

Giá trị trả về
boolean

thiết bị rỗng

public boolean isNullDevice (String serial)

Xác định xem nối tiếp đã cho có đại diện cho một thiết bị rỗng hay không

Tham số
serial String

Giá trị trả về
boolean

killEmulator

public void killEmulator (ITestDevice device)

Tắt trình mô phỏng đã cho.

Chặn cho đến khi trình mô phỏng biến mất khỏi adb. Sẽ không có hiệu lực nếu trình mô phỏng chưa có sẵn có.

Tham số
device ITestDevice: ITestDevice đại diện cho trình mô phỏng cần tắt

Gửi
DeviceNotAvailableException

LaunchEmulator (trình mô phỏng khởi chạy)

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

Phương thức trợ giúp để chạy trình mô phỏng.

Sẽ khởi chạy trình mô phỏng theo chỉ định của phương thức gọi

Tham số
device ITestDevice: phần giữ chỗ ITestDevice đại diện cho thiết bị trình mô phỏng được phân bổ

bootTimeout long: thời gian tính bằng mili giây để chờ trình mô phỏng khởi động

emulatorArgs : đối số dòng lệnh để chạy trình mô phỏng

Gửi
DeviceNotAvailableException

listTất cả thiết bị

public  listAllDevices (boolean shortDescriptor)

Trả về danh sách DeviceDescriptor cho mọi thiết bị đã biết

Tham số
shortDescriptor boolean: có giới hạn phần mô tả ở mức thông tin tối thiểu hay không

Giá trị trả về
danh sách DeviceDescriptor cho mọi thiết bị đã biết

listTất cả thiết bị

public  listAllDevices ()

Trả về danh sách DeviceDescriptor cho mọi thiết bị đã biết

Giá trị trả về
danh sách DeviceDescriptor cho mọi thiết bị đã biết

kết nối lạiDeviceToTcp

public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

Một phương thức trợ giúp sẽ chuyển thiết bị USB đã cho sang chế độ adb-over-tcp, sau đó kết nối với nó qua connectToTcpDevice(String).

Tham số
usbDevice ITestDevice: thiết bị hiện đang ở chế độ USB

Giá trị trả về
ITestDevice ITestDevice mới được phân bổ ở chế độ tcp hoặc null nếu là tcp không thể thiết lập kết nối

Gửi
DeviceNotAvailableException

removeDeviceMonitor

public void removeDeviceMonitor (IDeviceMonitor mon)

Xoá IDeviceMonitor đã thêm trước đó. Không có hiệu lực nếu mon chưa được thêm vào.

Tham số
mon IDeviceMonitor

removeFastbootListener

public void removeFastbootListener (IDeviceManager.IFastbootListener listener)

Thông báo cho người quản lý rằng trình nghe không còn quan tâm đến các thay đổi về trạng thái khởi động nhanh.

khởi động lạiAdbBrch

public void restartAdbBridge ()

Khởi động lại (nếu stopAdbBridge() được gọi) cầu nối và dịch vụ adb phụ thuộc vào adb kết nối.

dừng AdbBrch

public void stopAdbBridge ()

Dừng cầu nối và dịch vụ adb phụ thuộc vào các kết nối adb.

chấm dứt

public void terminate ()

Dừng các dịch vụ giám sát thiết bị và chấm dứt thư viện ddm.

Yêu cầu này phải được gọi khi chấm dứt ứng dụng.

chấm dứt thiết bị giám sát

public void terminateDeviceMonitor ()

Dừng màn hình thiết bị.

chấm dứt thiết bị

public void terminateDeviceRecovery ()

Dừng chuỗi khôi phục thiết bị.

chấm dứt cứng

public void terminateHard (String reason)

Tương tự như terminateHard().

Tham số
reason String: lý do chấm dứt (không bắt buộc).

chấm dứt cứng

public void terminateHard ()

Giống như terminate(), nhưng cũng cố gắng tắt adb.

Đã thêm thiết bị đầu tiên

public boolean waitForFirstDeviceAdded (long timeout)

Chờ cho đến khi thiết bị thực đầu tiên được kết nối. Nếu một thiết bị đã được kết nối trước đó, thiết bị đó trực tiếp trả về True. Nếu bạn không thêm thiết bị nào, giá trị này sẽ trả về giá trị false sau khi hết thời gian chờ.

Tham số
timeout long: thời gian để chờ tính bằng mili giây trước khi trả về giá trị false.

Giá trị trả về
boolean