مانیتور دستگاه

public final class DeviceMonitor
extends Object implements ClientTracker

شیء جاوا
com.android.tradefed.device.server.DeviceMonitor


DeviceMonitor دستگاه‌های متصل به adb را مانیتور می‌کند.

در یک نخ، DeviceListMonitorTask را اجرا می‌کند. این کار یک اتصال سوکت به میزبان adb برقرار می‌کند و ERROR(/DeviceListMonitorTask.ADB_TRACK_DEVICES_COMMAND) را صادر می‌کند. سپس آن سوکت را برای تمام تغییرات مربوط به اتصال دستگاه و وضعیت دستگاه نظارت می‌کند. اگر ::getClientSupport فعال نباشد، DeviceClientMonitorTask اجرا نمی‌شود و دستگاه‌ها ثبت نمی‌شوند.

در یک نخ دیگر، DeviceClientMonitorTask را اجرا می‌کند. این کار یک اتصال سوکت به میزبان adb برای هر دستگاه ثبت شده برقرار می‌کند و ERROR(/DeviceClientMonitorTask.ADB_TRACK_JDWP_COMMAND) را صادر می‌کند. در این اتصال، کلاینت‌های فعال روی دستگاه را مانیتور می‌کند. توجه: یک نخ، اتصالات jdwp را از همه دستگاه‌ها مانیتور می‌کند. اتصالات سوکت مختلف به adb (یکی برای هر دستگاه) از طریق یک انتخابگر واحد مالتی پلکس می‌شوند.

خلاصه

کلاس‌های تو در تو

class DeviceMonitor.DeviceListComparisonResult

سازندگان عمومی

DeviceMonitor ( AndroidDebugBridge server)

یک شیء DeviceMonitor جدید ایجاد می‌کند و آن را به شیء در حال اجرا AndroidDebugBridge پیوند می‌دهد.

روش‌های عمومی

int getConnectionAttemptCount ()
IDevice[] getDevices ()

دستگاه‌ها را برمی‌گرداند.

int getRestartAttemptCount ()
boolean hasInitialDeviceList ()
boolean isMonitoring ()

برمی‌گرداند که آیا مانیتور در حال حاضر به سرور debug bridge متصل است یا خیر.

void start ()

نظارت را آغاز می‌کند.

void stop ()

نظارت را متوقف می‌کند.

void trackClientToDropAndReopen ( ClientImpl client)

فراخوانی مجدد برای نشان دادن اینکه یک کلاینت قطع شده است اما باید تلاشی برای بازگشایی ارتباط با کلاینت انجام شود.

void trackDeviceToDropAndReopen ( DeviceImpl device)

فراخوانی مجدد برای نشان دادن اینکه دستگاهی از کار افتاده است.

void trackDisconnectedClient ( ClientImpl client)

فراخوانی مجدد برای زمانی که اتصال کلاینت قطع شده است.

سازندگان عمومی

مانیتور دستگاه

public DeviceMonitor (AndroidDebugBridge server)

یک شیء DeviceMonitor جدید ایجاد می‌کند و آن را به شیء در حال اجرا AndroidDebugBridge پیوند می‌دهد.

پارامترها
server AndroidDebugBridge : AndroidDebugBridge در حال اجرا.

روش‌های عمومی

تعداد تلاش برای اتصال (getConnectionAttemptCount)

public int getConnectionAttemptCount ()

بازگشت‌ها
int

دریافت دستگاه‌ها

public IDevice[] getDevices ()

دستگاه‌ها را برمی‌گرداند.

بازگشت‌ها
IDevice[]

تعداد تلاش برای شروع مجدد (getRestartAttemptCount)

public int getRestartAttemptCount ()

بازگشت‌ها
int

hasInitialDeviceList

public boolean hasInitialDeviceList ()

بازگشت‌ها
boolean

نظارت

public boolean isMonitoring ()

برمی‌گرداند که آیا مانیتور در حال حاضر به سرور debug bridge متصل است یا خیر.

بازگشت‌ها
boolean

شروع

public void start ()

نظارت را آغاز می‌کند.

متوقف کردن

public void stop ()

نظارت را متوقف می‌کند.

trackClientToDropAndReopen

public void trackClientToDropAndReopen (ClientImpl client)

فراخوانی مجدد برای نشان دادن اینکه یک کلاینت قطع شده است اما باید تلاشی برای بازگشایی ارتباط با کلاینت انجام شود.

پارامترها
client ClientImpl : که حذف شد.

trackDeviceToDropAndReopen

public void trackDeviceToDropAndReopen (DeviceImpl device)

فراخوانی مجدد برای نشان دادن اینکه دستگاه قطع شده است. باید تلاشی برای بازگشایی اتصال با دستگاه و برقراری مجدد ارتباط با هر یک از کلاینت‌های در حال اجرا روی آن دستگاه انجام شود.

پارامترها
device DeviceImpl : که حذف شد.

کلاینت قطع‌شده را دنبال کنید

public void trackDisconnectedClient (ClientImpl client)

فراخوانی برای زمانی که اتصال کلاینت قطع می‌شود. این فراخوانی برای اطلاع‌رسانی به هر thread که یک ثبت نام را در سوکت کلاینت نگه می‌دارد تا آن را آزاد کند، در نظر گرفته شده است.

پارامترها
client ClientImpl : که حذف شد