IDeviceManager

public interface IDeviceManager

com.android.tradefed.device.IDeviceManager


อินเทอร์เฟซสำหรับจัดการชุดอุปกรณ์ที่พร้อมใช้งานสำหรับการทดสอบ

สรุป

คลาสเรียนที่ซ้อนกัน

interface IDeviceManager.IFastbootListener

Listener สำหรับการเปลี่ยนแปลงสถานะ Fastboot 

เมธอดสาธารณะ

abstract void addDeviceMonitor(IDeviceMonitor mon)

เพิ่ม IDeviceMonitor

abstract void addFastbootListener(IDeviceManager.IFastbootListener listener)

แจ้งให้ผู้จัดการทราบว่าผู้ฟังสนใจการเปลี่ยนแปลงสถานะ Fastboot

abstract void addMonitoringTcpFastbootDevice(String serial, String fastboot_serial)

เพิ่มอุปกรณ์ไปยัง Fastboot Monitor

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)

เมธอดตัวช่วยในการเรียกใช้คำสั่ง Shell ในอุปกรณ์ที่พร้อมใช้งาน

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)

ตรวจสอบว่าหมายเลขซีเรียลที่ระบุแสดงถึงอุปกรณ์ว่างหรือไม่

abstract void killEmulator(ITestDevice device)

ปิดโปรแกรมจำลองที่ระบุ

abstract void 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 อีกต่อไป

default void removeMonitoringTcpFastbootDevice(String serial)
abstract void restartAdbBridge()

รีสตาร์ท (หากมีการเรียกใช้ stopAdbBridge()) บริดจ์และบริการ adb จะขึ้นอยู่กับการเชื่อมต่อ adb

abstract void stopAdbBridge()

หยุด adb bridge และบริการที่ขึ้นอยู่กับการเชื่อมต่อ 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 หากมีผู้ฟังที่ใช้งานอยู่อย่างน้อย 1 คน

สิ่งที่ต้องทำ: นี่เป็นวิธีแก้ปัญหาชั่วคราว โปรดหาวิธีที่ดีกว่านี้

addMonitoringTcpFastbootDevice

public abstract void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

เพิ่มอุปกรณ์ไปยัง Fastboot Monitor มอนิเตอร์ 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 ITestDevice หรือ null หากสร้างการเชื่อมต่อ TCP ไม่ได้

disconnectFromTcpDevice

public abstract boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

ยกเลิกการเชื่อมต่อจากอุปกรณ์ที่เชื่อมต่อผ่าน adb-over-tcp

เปลี่ยนอุปกรณ์กลับเป็นโหมด USB และยกเลิกการเชื่อมต่อ

พารามิเตอร์
tcpDevice ITestDevice: อุปกรณ์ที่อยู่ในโหมด TCP ในปัจจุบัน ซึ่งก่อนหน้านี้จัดสรรผ่าน connectToTcpDevice(String)

คิกรีเทิร์น
boolean true หากเปลี่ยนเป็นโหมด USB สำเร็จ

displayDevicesInfo

public abstract void displayDevicesInfo (PrintWriter printWriter, 
                boolean includeStub)

แสดงคำอธิบายที่ใช้งานง่ายซึ่งมีรายการอุปกรณ์ที่รู้จัก สถานะ และค่า สำหรับIDeviceSelectionตัวเลือกที่ใช้กันโดยทั่วไป

พารามิเตอร์
printWriter PrintWriter: ERROR(/PrintWriter) ที่จะแสดงคำอธิบาย

includeStub boolean: ระบุว่าจะแสดงอุปกรณ์ Stub ด้วยหรือไม่

executeCmdOnAvailableDevice

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

เมธอดตัวช่วยในการเรียกใช้คำสั่ง Shell ในอุปกรณ์ที่พร้อมใช้งาน

พารามิเตอร์
serial String: ซีเรียลของอุปกรณ์

command String: คำสั่งเชลล์

timeout long: ระยะเวลาที่ใช้ในการดำเนินการคำสั่งให้เสร็จสมบูรณ์

timeUnit TimeUnit: หน่วยสำหรับระยะหมดเวลา

คิกรีเทิร์น
CommandResult A CommandResult

forceAllocateDevice

public abstract ITestDevice forceAllocateDevice (String serial)

จัดสรรอุปกรณ์อย่างไม่สุภาพ แม้ว่าอุปกรณ์นั้นจะยังไม่พร้อมใช้งานก็ตาม

จะไม่มีผลหากมีการจัดสรรอุปกรณ์แล้ว

พารามิเตอร์
serial String: หมายเลขซีเรียลของอุปกรณ์ที่จะจัดสรร

คิกรีเทิร์น
ITestDevice ITestDevice หรือ null หากจัดสรรไม่ได้

freeDevice

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

เริ่มต้นตัวจัดการอุปกรณ์ ต้องเรียกใช้เมธอดนี้เพียงครั้งเดียวก่อนที่จะเรียกใช้เมธอดอื่นๆ

isEmulator

public abstract boolean isEmulator (String serial)

ตรวจสอบว่าหมายเลขซีเรียลที่ระบุแสดงถึงโปรแกรมจำลองหรือไม่

พารามิเตอร์
serial String

คิกรีเทิร์น
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

แสดงว่าเราควรตรวจสอบหรือไม่ว่าNativeDeviceStateMonitorระบบไฟล์ได้รับการติดตั้งอย่างถูกต้องหรือไม่

คิกรีเทิร์น
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 (boolean shortDescriptor)

แสดงรายการ DeviceDescriptor สำหรับอุปกรณ์ที่รู้จักทั้งหมด

พารามิเตอร์
shortDescriptor boolean: จะจำกัดตัวอธิบายให้มีข้อมูลขั้นต่ำหรือไม่

คิกรีเทิร์น
รายการ DeviceDescriptor สำหรับอุปกรณ์ที่รู้จักทั้งหมด

listAllDevices

public abstract  listAllDevices ()

แสดงรายการ DeviceDescriptor สำหรับอุปกรณ์ที่รู้จักทั้งหมด

คิกรีเทิร์น
รายการ DeviceDescriptor สำหรับอุปกรณ์ที่รู้จักทั้งหมด

reconnectDeviceToTcp

public abstract ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

เมธอดตัวช่วยที่เปลี่ยนอุปกรณ์ USB ที่ระบุเป็นโหมด adb-over-tcp แล้วเชื่อมต่อกับ อุปกรณ์ผ่าน connectToTcpDevice(String)

พารามิเตอร์
usbDevice ITestDevice: อุปกรณ์ที่อยู่ในโหมด USB ในขณะนี้

คิกรีเทิร์น
ITestDevice ITestDevice ที่จัดสรรใหม่ในโหมด TCP หรือ null หากสร้างการเชื่อมต่อ TCP ไม่ได้

การขว้าง
DeviceNotAvailableException หากการเชื่อมต่อกับ usbDevice ขาดหายไปและ กู้คืนไม่ได้

removeDeviceMonitor

public abstract void removeDeviceMonitor (IDeviceMonitor mon)

นำ IDeviceMonitor ที่เพิ่มไว้ก่อนหน้านี้ออก จะไม่มีผลหากไม่ได้เพิ่มจอภาพ

พารามิเตอร์
mon IDeviceMonitor

removeFastbootListener

public abstract void removeFastbootListener (IDeviceManager.IFastbootListener listener)

แจ้งให้ตัวจัดการทราบว่าผู้ฟังไม่สนใจการเปลี่ยนแปลงสถานะ fastboot อีกต่อไป

removeMonitoringTcpFastbootDevice

public void removeMonitoringTcpFastbootDevice (String serial)

พารามิเตอร์
serial String

restartAdbBridge

public abstract void restartAdbBridge ()

รีสตาร์ท (หากมีการเรียกใช้ stopAdbBridge()) บริดจ์และบริการ adb จะขึ้นอยู่กับการเชื่อมต่อ adb

stopAdbBridge

public abstract void stopAdbBridge ()

หยุด adb bridge และบริการที่ขึ้นอยู่กับการเชื่อมต่อ adb

สิ้นสุด

public abstract void terminate ()

หยุดบริการตรวจสอบอุปกรณ์และสิ้นสุดไลบรารี ddm

ต้องเรียกใช้เมื่อแอปพลิเคชันสิ้นสุดการทำงาน

ดูเพิ่มเติม:

terminateDeviceMonitor

public abstract void terminateDeviceMonitor ()

หยุดการตรวจสอบอุปกรณ์

terminateDeviceRecovery

public abstract void terminateDeviceRecovery ()

หยุดเธรดการกู้คืนอุปกรณ์

terminateHard

public void terminateHard (String reason)

เช่น terminateHard()

พารามิเตอร์
reason String: เหตุผลที่ไม่บังคับสำหรับการสิ้นสุดการดำเนินงาน

terminateHard

public abstract void terminateHard ()

เช่น terminate() แต่พยายามปิด adb โดยบังคับด้วย

waitForFirstDeviceAdded

public abstract boolean waitForFirstDeviceAdded (long timeout)

รอจนกว่าจะเชื่อมต่ออุปกรณ์จริงเครื่องแรก หากอุปกรณ์เชื่อมต่ออยู่ก่อนหน้านี้ ระบบจะแสดงค่าเป็น True โดยตรง หากไม่มีการเพิ่มอุปกรณ์ ระบบจะแสดงผลเป็นเท็จหลังจากหมดเวลา

พารามิเตอร์
timeout long: เวลาที่รอเป็นมิลลิวินาทีก่อนที่จะส่งคืนค่าเท็จ

คิกรีเทิร์น
boolean