DeviceManager

public class DeviceManager
extends Object implements IDeviceManager

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


ملخّص

الصفوف المتداخلة

class DeviceManager.FastbootDevice

تمثيل لجهاز في وضع Fastboot 

الثوابت

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

أضِف جهازًا إلى أداة مراقبة Fastboot.

ITestDevice allocateDevice(IDeviceSelection options, boolean isTemporary)

طلب جهاز للاختبار يستوفي معايير معيّنة

ITestDevice allocateDevice(IDeviceSelection options)

طلب جهاز للاختبار يستوفي معايير معيّنة

ITestDevice allocateDevice()

طلب جهاز فعلي لإجراء الاختبار

ITestDevice connectToTcpDevice(String ipAndPort)

الاتصال بجهاز باستخدام adb-over-tcp

تخصّص هذه الطريقة جهازًا جديدًا يجب تحريره في النهاية باستخدام disconnectFromTcpDevice(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)

طريقة مساعدة لتنفيذ أمر shell على الجهاز المتاح.

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 الثنائي المطلوب استخدامه.

long getShellCheckCmdTime()

تعرض هذه السمة المهلة بالمللي ثانية لأمر التحقّق من توفّر Shell.

void init(IDeviceSelection globalDeviceFilter, List<IDeviceMonitor> globalDeviceMonitors, IManagedTestDeviceFactory deviceFactory)

ابدأ مدير الجهاز.

void init(IDeviceSelection globalDeviceFilter, List<IDeviceMonitor> globalDeviceMonitors)

ابدأ مدير الجهاز.

void init()

ابدأ مدير الجهاز.

boolean isEmulator(String serial)

تحديد ما إذا كان الرقم التسلسلي المحدّد يمثّل محاكيًا

boolean isFileSystemMountCheckEnabled()

تعرض هذه السمة ما إذا كان يجب التحقّق من أنّ نظام الملفات NativeDeviceStateMonitor مثبّت بشكل صحيح.

boolean isNullDevice(String serial)

تحديد ما إذا كان الرقم التسلسلي المحدّد يمثّل جهازًا فارغًا

void killEmulator(ITestDevice device)

أوقِف المحاكي المحدّد.

void launchEmulator(ITestDevice device, long bootTimeout, IRunUtil runUtil, List<String> emulatorArgs)

طريقة مساعدة لتشغيل المحاكي.

List<DeviceDescriptor> listAllDevices(boolean shortDescriptor)

تعرض هذه الطريقة قائمة بـ DeviceDescriptors لجميع الأجهزة المعروفة

List<DeviceDescriptor> listAllDevices()

تعرض هذه الطريقة قائمة بـ DeviceDescriptors لجميع الأجهزة المعروفة

ITestDevice reconnectDeviceToTcp(ITestDevice usbDevice)

طريقة مساعدة تعمل على تبديل جهاز USB المحدّد إلى وضع adb-over-tcp، ثم الاتصال به عبر connectToTcpDevice(String).

void removeDeviceMonitor(IDeviceMonitor mon)

يزيل IDeviceMonitor سبق أن تمت إضافته.

void removeFastbootListener(IDeviceManager.IFastbootListener listener)

يُعلم هذا الإجراء المدير بأنّ المستمع لم يعُد مهتمًا بالتغييرات في حالة fastboot.

void removeMonitoringTcpFastbootDevice(String serial)

void restartAdbBridge()

أعِد التشغيل (في حال تم استدعاء stopAdbBridge())، إذ تعتمد خدمات وجسر adb على اتصالات adb.

void stopAdbBridge()

أوقِف جسر تصحيح أخطاء Android (adb) والخدمات التي تعتمد على اتصالات 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

عرض السلسلة للخصائص غير المعروفة

Constant Value: "unknown"

الحقول

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: هذا حلّ مؤقت، يجب إيجاد حلّ أفضل

addMonitoringTcpFastbootDevice

public void addMonitoringTcpFastbootDevice (String serial, 
                String fastbootSerial)

أضِف جهازًا إلى أداة مراقبة Fastboot. سيستخدم برنامج مراقبة fastboot السلسلة &quot;fastboot_serial&quot; للتواصل مع الجهاز.

المعلَمات
serial String: الرقم التسلسلي للجهاز

fastbootSerial 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(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: PrintWriter الذي سيتم إخراج الوصف إليه

includeStub boolean: لتحديد ما إذا كان سيتم عرض الأجهزة الوهمية أيضًا.

executeCmdOnAvailableDevice

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

طريقة مساعدة لتنفيذ أمر shell على الجهاز المتاح.

المعلَمات
serial String: الرقم التسلسلي للجهاز

command String: تمثّل هذه السمة أمر shell.

timeout long: مقدار الوقت اللازم لإكمال الطلب

timeUnit TimeUnit: وحدة المهلة

المرتجعات
CommandResult CommandResult

executeGlobalAdbCommand

public String executeGlobalAdbCommand (String... cmdArgs)

تنفيذ أمر adb غير مستهدف لجهاز معيّن، مثلاً adb connect

المرتجعات
String الناتج القياسي إذا نجح الأمر، أو قيمة فارغة في حال عدم النجاح

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 للجهاز المحدّد، أو قيمة فارغة إذا لم يكن الرقم التسلسلي مطابقًا لجهاز معروف.

getFastbootPath

public String getFastbootPath ()

تعرض هذه السمة مسار ملف fastboot الثنائي المطلوب استخدامه.

المرتجعات
String

getShellCheckCmdTime

public long getShellCheckCmdTime ()

تعرض هذه السمة المهلة بالمللي ثانية لأمر التحقّق من توفّر Shell.

المرتجعات
long

init

public void init (IDeviceSelection globalDeviceFilter, 
                List<IDeviceMonitor> globalDeviceMonitors, 
                IManagedTestDeviceFactory deviceFactory)

ابدأ مدير الجهاز. يجب استدعاء هذه الدالة مرة واحدة فقط قبل استدعاء أي دوال أخرى.

المعلَمات
globalDeviceFilter IDeviceSelection

globalDeviceMonitors List

deviceFactory IManagedTestDeviceFactory

init

public void init (IDeviceSelection globalDeviceFilter, 
                List<IDeviceMonitor> globalDeviceMonitors)

ابدأ مدير الجهاز. يجب استدعاء هذه الدالة مرة واحدة فقط قبل استدعاء أي دوال أخرى.

المعلَمات
globalDeviceFilter body: IDeviceSelection: فلتر الجهاز

globalDeviceMonitors List

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)

تحديد ما إذا كان الرقم التسلسلي المحدّد يمثّل جهازًا فارغًا

المعلَمات
serial String

المرتجعات
boolean

killEmulator

public void killEmulator (ITestDevice device)

أوقِف المحاكي المحدّد.

يتم الحظر إلى أن يختفي المحاكي من adb. لن يكون لهذا الإعداد أي تأثير إذا كان المحاكي غير متاح.

المعلَمات
device ITestDevice: ITestDevice الذي يمثّل المحاكي الذي سيتم إيقافه

عمليات الطرح
DeviceNotAvailableException

launchEmulator

public void launchEmulator (ITestDevice device, 
                long bootTimeout, 
                IRunUtil runUtil, 
                List<String> emulatorArgs)

طريقة مساعدة لتشغيل المحاكي.

سيتم تشغيل المحاكي على النحو الذي يحدّده المتصل

المعلَمات
device ITestDevice: العنصر النائب ITestDevice الذي يمثّل الجهاز المحاكي المخصّص

bootTimeout long: الوقت بالملّي ثانية الذي يجب انتظاره حتى يتم تشغيل المحاكي

emulatorArgs List: وسيطات سطر الأوامر لتشغيل المحاكي

عمليات الطرح
DeviceNotAvailableException

listAllDevices

public List<DeviceDescriptor> listAllDevices (boolean shortDescriptor)

تعرض هذه الطريقة قائمة بـ DeviceDescriptors لجميع الأجهزة المعروفة

المعلَمات
shortDescriptor boolean: ما إذا كان سيتم حصر الواصفات على الحد الأدنى من المعلومات

المرتجعات
List<DeviceDescriptor> قائمة بـ DeviceDescriptor لجميع الأجهزة المعروفة

listAllDevices

public List<DeviceDescriptor> listAllDevices ()

تعرض هذه الطريقة قائمة بـ DeviceDescriptors لجميع الأجهزة المعروفة

المرتجعات
List<DeviceDescriptor> قائمة بـ 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.

removeMonitoringTcpFastbootDevice

public void removeMonitoringTcpFastbootDevice (String serial)

المعلَمات
serial String

restartAdbBridge

public void restartAdbBridge ()

أعِد التشغيل (في حال تم استدعاء stopAdbBridge())، إذ تعتمد خدمات وجسر adb على اتصالات adb.

stopAdbBridge

public void stopAdbBridge ()

أوقِف جسر تصحيح أخطاء Android (adb) والخدمات التي تعتمد على اتصالات 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: الوقت المطلوب الانتظار فيه بالملي ثانية قبل عرض القيمة "خطأ".

المرتجعات
boolean