IDeviceManager

public interface IDeviceManager

com.android.tradefed.device.IDeviceManager


ממשק לניהול קבוצת המכשירים הזמינים לבדיקה.

סיכום

מחלקות מקוננות

interface IDeviceManager.IFastbootListener

האזנה לשינויים במצב של אתחול מהיר (fastboot). 

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

abstract void addDeviceMonitor(IDeviceMonitor mon)

הוספת IDeviceMonitor

abstract void addFastbootListener(IDeviceManager.IFastbootListener listener)

מודיעה למנהל שהמאזינים מעוניינים בשינויים במצב האתחול המהיר.

abstract void addMonitoringTcpFastbootDevice(String serial, String fastboot_serial)

הוספת מכשיר לצג לאתחול מהיר (fastboot).

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)

שיטת סיוע להפעלה של פקודת מעטפת במכשיר זמין.

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

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

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)

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

abstract listAllDevices()

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

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

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

מודיעה למנהל שהמאזינים מעוניינים בשינויים במצב האתחול המהיר.

בשלב הזה, IDeviceManager יעקוב אחר מכשירים בתהליך אתחול מהיר (fastboot) רק אם יש אחד כזה או מאזינים פעילים יותר.

משימה לביצוע: זו קצת פריצה - מצאו פתרון טוב יותר

addMonitoringTcpFastbootDevice

public abstract void addMonitoringTcpFastbootDevice (String serial, 
                String fastboot_serial)

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

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

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

הקצאת מכשיר

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 או null אם לא ניתן ליצור חיבור tcp

התנתקות מ-TcpDevice

public abstract boolean disconnectFromTcpDevice (ITestDevice tcpDevice)

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

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

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

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

נתוני displaydeviceInfo

public abstract void displayDevicesInfo (PrintWriter printWriter, 
                boolean includeStub)

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

פרמטרים
printWriter PrintWriter: ה-ERROR(/PrintWriter) שאליו צריך לשלוח את התיאור

includeStub boolean: האם להציג גם מכשירי סטודנטים.

substituteCmdOnAvailableDevice

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

שיטת סיוע להפעלה של פקודת מעטפת במכשיר זמין.

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

command String: פקודת המעטפת.

timeout long: משך הזמן עד להשלמת הפקודה.

timeUnit TimeUnit: היחידה של הזמן הקצוב לתפוגה.

החזרות
CommandResult CommandResult.

PowerAllocateDevice

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

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

החזרות
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

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 אם האמולטור לא מצליח להיכבות

השקה אמולטור

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

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

הפעלת האמולטור כפי שצוין על ידי המתקשר

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

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

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

קליעות
DeviceNotAvailableException אם האמולטור לא מצליח לאתחל או להתחבר לאינטרנט

הצגת רשימה של כל המכשירים

public abstract  listAllDevices (boolean shortDescriptor)

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

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

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

הצגת רשימה של כל המכשירים

public abstract  listAllDevices ()

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

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

ConnectDeviceToTcp

public abstract ITestDevice reconnectDeviceToTcp (ITestDevice usbDevice)

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

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

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

קליעות
DeviceNotAvailableException אם החיבור עם usbDevice התנתק לא ניתן לשחזר

הסרתDeviceMonitor

public abstract void removeDeviceMonitor (IDeviceMonitor mon)

הסרה של IDeviceMonitor שנוסף בעבר. אין לכך השפעה אם לא מוסיפים שני.

פרמטרים
mon IDeviceMonitor

הסרת אתחול מהיר (FastbootListener)

public abstract void removeFastbootListener (IDeviceManager.IFastbootListener listener)

מודיעה למנהל שהמאזינים לא מעוניינים יותר בשינויים במצב האתחול המהיר.

הפעלה מחדש של AdbBiger

public abstract void restartAdbBridge ()

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

stopAdbBiger

public abstract void stopAdbBridge ()

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

לסגור

public abstract void terminate ()

הפסקת שירותי המעקב של המכשיר וסגירה של ספריית ה-ddm.

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

למידע נוסף:

offsetDeviceMonitor

public abstract void terminateDeviceMonitor ()

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

סגירה של שחזור המכשיר

public abstract void terminateDeviceRecovery ()

הפסקת השרשור של שחזור המכשיר.

סגירה

public void terminateHard (String reason)

כמו terminateHard().

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

סגירה

public abstract void terminateHard ()

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

pendingForFirstDevice added

public abstract boolean waitForFirstDeviceAdded (long timeout)

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

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

החזרות
boolean