DeviceManager

public class DeviceManager
extends Object implements IDeviceManager

java.lang.Object
   ↳ 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 addAvailableNativeDevice(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)

מאתחלים את מנהל המכשירים.

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

שיטה מסייעת להפעלת אמולטור.

listAllDevices(boolean shortDescriptor)

הפונקציה מחזירה רשימה של DeviceDescriptors לכל המכשירים הידועים

listAllDevices()

הפונקציה מחזירה רשימה של DeviceDescriptors לכל המכשירים הידועים

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 bridge ואת השירותים שתלויים בחיבורי adb.

void stopAdbBridge()

עצירת adb bridge והשירותים תלויים בחיבורי 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

mFastbootEnabled

protected boolean mFastbootEnabled

יוצרים ציבוריים

DeviceManager

public DeviceManager ()

צריך לאחזר את DeviceManager מ-GlobalConfiguration

שיטות ציבוריות

addAvailableDevice

public void addAvailableDevice (IDevice stubDevice)

פרמטרים
stubDevice IDevice

addAvailableNativeDevice

public void addAvailableNativeDevice (IDevice stubDevice)

פרמטרים
stubDevice IDevice

addDeviceMonitor

public void addDeviceMonitor (IDeviceMonitor mon)

הוספה של IDeviceMonitor

פרמטרים
mon IDeviceMonitor

addFastbootDevice

public void addFastbootDevice (DeviceManager.FastbootDevice fastbootDevice)

פרמטרים
fastbootDevice DeviceManager.FastbootDevice

addFastbootListener

public void addFastbootListener (IDeviceManager.IFastbootListener listener)

הודעה למנהל על כך שמאזין מעוניין לקבל עדכונים על שינויים במצב fastboot.

נכון לעכשיו, IDeviceManager יעקוב אחרי מכשירים במצב fastboot רק אם יש מאזין פעיל אחד או יותר.

TODO: this is a bit of a hack - find a better solution

addMonitoringTcpFastbootDevice

public void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

הוספת מכשיר למעקב אחר Fastboot. צג fastboot ישתמש ב-'fastboot_serial' כדי לתקשר עם המכשיר.

פרמטרים
serial String: המספר הסידורי של המכשיר.

fastboot_serial String: המספר הסידורי של המכשיר במצב fastboot.

allocateDevice

public ITestDevice allocateDevice (IDeviceSelection options, 
                boolean isTemporary)

לבקש מכשיר לבדיקה שעומד בקריטריונים מסוימים.

פרמטרים
options IDeviceSelection: IDeviceSelection שהמכשיר צריך לעמוד בו.

isTemporary boolean: אם צריך ליצור מכשיר NullDevice זמני או לא.

החזרות
ITestDevice ITestDevice לצורך בדיקה, או null אם אין כזה

allocateDevice

public ITestDevice allocateDevice (IDeviceSelection options)

לבקש מכשיר לבדיקה שעומד בקריטריונים מסוימים.

פרמטרים
options IDeviceSelection: IDeviceSelection שהמכשיר צריך לעמוד בו.

החזרות
ITestDevice ITestDevice לצורך בדיקה, או null אם אין כזה

allocateDevice

public ITestDevice allocateDevice ()

בקשה למכשיר פיזי לבדיקה

החזרות
ITestDevice ITestDevice לצורך בדיקה, או null אם אין כזה

connectToTcpDevice

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

מנתקים מכשיר שמחובר באמצעות adb-over-tcp.

המכשיר עובר חזרה למצב USB ומתפנה.

פרמטרים
tcpDevice ITestDevice: המכשיר שנמצא כרגע במצב TCP, שהוקצה בעבר דרך connectToTcpDevice(String)

החזרות
boolean true אם המעבר למצב USB הצליח

displayDevicesInfo

public void displayDevicesInfo (PrintWriter stream, 
                boolean includeStub)

הפלט הוא תיאור ידידותי למשתמש שכולל רשימה של מכשירים מוכרים, את המצב שלהם ואת הערכים של אפשרויות IDeviceSelection נפוצות.

פרמטרים
stream PrintWriter: ה-ERROR(/PrintWriter) שאליו יופיע הפלט של התיאור

includeStub boolean: האם להציג גם מכשירי stub.

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 connect'

החזרות
String הפלט של std אם הפקודה הצליחה, null אחרת.

forceAllocateDevice

public ITestDevice forceAllocateDevice (String serial)

הקצאה לא מנומסת של מכשיר, גם אם הוא לא זמין כרגע.

לא תהיה לה השפעה אם המכשיר כבר הוקצה.

פרמטרים
serial String: המספר הסידורי של המכשיר שרוצים להקצות

החזרות
ITestDevice ITestDevice, או null אם לא ניתן היה להקצות אותו

freeDevice

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 אם המספר הסידורי לא תואם למכשיר ידוע.

getFastbootPath

public String getFastbootPath ()

הפונקציה מחזירה את הנתיב לקובץ הבינארי של fastboot לשימוש.

החזרות
String

init

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

מאתחלים את מנהל המכשירים. צריך להפעיל את השיטה הזו פעם אחת בלבד, לפני שמפעילים שיטות אחרות.

פרמטרים
globalDeviceFilter IDeviceSelection

globalDeviceMonitors

deviceFactory IManagedTestDeviceFactory

init

public void init (IDeviceSelection globalDeviceFilter, 
                 globalDeviceMonitors)

מאתחלים את מנהל המכשירים. צריך להפעיל את השיטה הזו פעם אחת בלבד, לפני שמפעילים שיטות אחרות.

פרמטרים
globalDeviceFilter IDeviceSelection: מסנן המכשירים

globalDeviceMonitors

init

public void init ()

מאתחלים את מנהל המכשירים. צריך להפעיל את השיטה הזו פעם אחת בלבד, לפני שמפעילים שיטות אחרות.

isEmulator

public boolean isEmulator (String serial)

בדיקה אם מספר סידורי נתון מייצג אמולטור

פרמטרים
serial String

החזרות
boolean

isFileSystemMountCheckEnabled

public boolean isFileSystemMountCheckEnabled ()

הפונקציה מחזירה אם צריך לבדוק ב-NativeDeviceStateMonitor אם מערכת הקבצים מותקנת כמו שצריך.

החזרות
boolean

isNullDevice

public boolean isNullDevice (String serial)

בדיקה אם מספר סידורי נתון מייצג מכשיר null

פרמטרים
serial String

החזרות
boolean

killEmulator

public void killEmulator (ITestDevice device)

כיבוי האמולטור הנתון.

המערכת נחסמת עד שהאמולטור ייעלם מ-adb. לא תהיה לה השפעה אם הסימולטור כבר לא זמין.

פרמטרים
device ITestDevice: ה-ITestDevice שמייצג את האמולטור שצריך לכבות

זריקות
DeviceNotAvailableException

launchEmulator

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

שיטה מסייעת להפעלת אמולטור.

ההפעלה של הסימולטור תתבצע לפי ההגדרה של מבצע הקריאה החוזרת

פרמטרים
device ITestDevice: placeholder‏ ITestDevice שמייצג את מכשיר האמולטור שהוקצה

bootTimeout long: משך הזמן באלפיות שנייה להמתנה להפעלה של הסימולטור

emulatorArgs : ארגומנטים בשורת הפקודה להפעלת האמולטור

זריקות
DeviceNotAvailableException

listAllDevices

public  listAllDevices (boolean shortDescriptor)

הפונקציה מחזירה רשימה של DeviceDescriptors לכל המכשירים הידועים

פרמטרים
shortDescriptor boolean: האם להגביל את התיאורים למידע מינימלי

החזרות
רשימה של DeviceDescriptor לכל המכשירים הידועים

listAllDevices

public  listAllDevices ()

הפונקציה מחזירה רשימה של DeviceDescriptors לכל המכשירים הידועים

החזרות
רשימה של DeviceDescriptor לכל המכשירים הידועים

reconnectDeviceToTcp

public ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

שיטה מסייעת שמעבירה את מכשיר ה-USB הנתון למצב adb-over-tcp, ואז מתחברת אליו דרך connectToTcpDevice(String).

פרמטרים
usbDevice ITestDevice: המכשיר נמצא כרגע במצב USB

החזרות
ITestDevice ITestDevice שהוקצה לאחרונה במצב TCP או null אם לא ניתן היה ליצור חיבור TCP

זריקות
DeviceNotAvailableException

removeDeviceMonitor

public void removeDeviceMonitor (IDeviceMonitor mon)

הסרת IDeviceMonitor שנוסף בעבר. אין לה השפעה אם לא הוספתם את mon.

פרמטרים
mon IDeviceMonitor

removeFastbootListener

public void removeFastbootListener (IDeviceManager.IFastbootListener listener)

הודעה למנהל על כך שהמאזין לא מעוניין יותר בשינויים במצב fastboot.

restartAdbBridge

public void restartAdbBridge ()

מפעילים מחדש (אם stopAdbBridge() הופעל) את adb bridge ואת השירותים שתלויים בחיבורי adb.

stopAdbBridge

public void stopAdbBridge ()

עצירת adb bridge והשירותים תלויים בחיבורי adb.

סיום

public void terminate ()

הפסקת שירותי מעקב אחר מכשירים וסגירת ספריית ה-DDM.

צריך להפעיל את הפונקציה הזו בסיום האפליקציה.

terminateDeviceMonitor

public void terminateDeviceMonitor ()

עוצרים את מכשירי המעקב.

terminateDeviceRecovery

public void terminateDeviceRecovery ()

עצירת השרשור של שחזור המכשיר.

terminateHard

public void terminateHard (String reason)

כמו terminateHard().

פרמטרים
reason String: הסיבה האופציונלית לסיום.

terminateHard

public void terminateHard ()

כמו terminate(), אבל מנסים גם לכבות בכוח את adb.

waitForFirstDeviceAdded

public boolean waitForFirstDeviceAdded (long timeout)

ממתינים עד שמתחבר מכשיר פיזי ראשון. אם המכשיר היה מחובר בעבר, הפונקציה מחזירה ישירות את הערך True. אם לא נוסף מכשיר, הפונקציה מחזירה את הערך false לאחר זמן קצוב.

פרמטרים
timeout long: משך ההמתנה באלפיות השנייה לפני החזרת false.

החזרות
boolean