دستگاه فعال‌شده توسط IShell

public interface IShellEnabledDevice

com.android.ddmlib.IShellEnabledDevice


یک دستگاه انتزاعی که می‌تواند دستورات shell را دریافت کند.

خلاصه

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

abstract void executeShellCommand (String command, IShellOutputReceiver receiver, long maxTimeToOutputResponse, TimeUnit maxTimeUnits)

یک دستور shell را روی دستگاه اجرا می‌کند و نتیجه را به یک receiver ارسال می‌کند.

abstract void executeShellCommand (String command, IShellOutputReceiver receiver, long maxTimeout, long maxTimeToOutputResponse, TimeUnit maxTimeUnits)

یک دستور shell را روی دستگاه اجرا می‌کند و نتیجه را به یک receiver ارسال می‌کند.

abstract String getName ()

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

abstract ListenableFuture<String> getSystemProperty (String name)

یک پرس‌وجوی ناهمزمان بالقوه برای یک ویژگی سیستم انجام دهید.

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

اجرای فرمان Shell

public abstract void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits)

یک دستور shell را روی دستگاه اجرا می‌کند و نتیجه را به یک receiver ارسال می‌کند.

maxTimeToOutputResponse به عنوان حداکثر زمان انتظار هنگام انتظار برای خروجی دستور از دستگاه استفاده می‌شود.
در هر زمانی، اگر دستور shell برای مدت زمانی طولانی‌تر از maxTimeToOutputResponse چیزی خروجی ندهد، آنگاه متد ShellCommandUnresponsiveException صادر خواهد کرد.

برای دستوراتی مانند خروجی log، باید از مقدار maxTimeToOutputResponse برابر با ۰ استفاده شود، به این معنی که متد هرگز اجرا نمی‌شود و تا زمانی که IShellOutputReceiver.isCancelled() گیرنده true را برنگرداند، مسدود خواهد شد.

پارامترها
command String : دستور shell برای اجرا

receiver IShellOutputReceiver : IShellOutputReceiver که خروجی دستور shell را دریافت می‌کند.

maxTimeToOutputResponse long : حداکثر زمانی که دستور مجاز است هیچ پاسخی ارائه ندهد. مقدار 0 به این معنی است که متد برای همیشه (تا زمانی که receiver اجرا را لغو کند) منتظر خروجی دستور می‌ماند و هرگز ارسال نمی‌شود.

maxTimeUnits TimeUnit : واحد برای مقادیر غیر صفر maxTimeToOutputResponse .

پرتاب‌ها
TimeoutException در صورت بروز وقفه در اتصال هنگام ارسال دستور.
AdbCommandRejectedException اگر adb دستور را رد کند.
ShellCommandUnresponsiveException در صورتی که دستور shell برای مدت زمانی طولانی‌تر از maxTimeToOutputResponse هیچ خروجی ارسال نکند.
در صورت بروز خطای ورودی/خروجی در اتصال.

همچنین ببینید:

اجرای فرمان Shell

public abstract void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeout, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits)

یک دستور shell را روی دستگاه اجرا می‌کند و نتیجه را به یک receiver ارسال می‌کند.

maxTimeToOutputResponse به عنوان حداکثر زمان انتظار هنگام انتظار برای خروجی دستور از دستگاه استفاده می‌شود.
در هر زمانی، اگر دستور shell برای مدت زمانی طولانی‌تر از maxTimeToOutputResponse چیزی خروجی ندهد، آنگاه متد ShellCommandUnresponsiveException صادر خواهد کرد.

برای دستوراتی مانند خروجی log، باید از مقدار maxTimeToOutputResponse برابر با ۰ استفاده شود، به این معنی که متد هرگز اجرا نمی‌شود و تا زمانی که IShellOutputReceiver.isCancelled() گیرنده true را برنگرداند، مسدود خواهد شد.

پارامترها
command String : دستور shell برای اجرا

receiver IShellOutputReceiver : IShellOutputReceiver که خروجی دستور shell را دریافت می‌کند.

maxTimeout long : حداکثر زمان انتظار برای اجرای دستور. مقدار 0 به این معنی است که هیچ حداکثر زمان انتظاری اعمال نخواهد شد.

maxTimeToOutputResponse long : حداکثر زمانی که دستور مجاز است هیچ پاسخی ارائه ندهد. مقدار 0 به این معنی است که متد برای همیشه (تا زمانی که receiver اجرا را لغو کند) منتظر خروجی دستور می‌ماند و هرگز ارسال نمی‌شود.

maxTimeUnits TimeUnit : واحد برای مقادیر غیر صفر maxTimeout و maxTimeToOutputResponse .

پرتاب‌ها
TimeoutException در صورت بروز وقفه در اتصال هنگام ارسال دستور.
AdbCommandRejectedException اگر adb دستور را رد کند.
ShellCommandUnresponsiveException در صورتی که دستور shell برای مدت زمانی طولانی‌تر از maxTimeToOutputResponse هیچ خروجی ارسال نکند.
در صورت بروز خطای ورودی/خروجی در اتصال.

همچنین ببینید:

دریافت نام

public abstract String getName ()

یک نام (انسانی) برای این دستگاه برمی‌گرداند. معمولاً این نام برای AVDها و ترکیبی از نام سازنده، نام مدل و شماره سریال برای دستگاه‌ها است.

بازگشت‌ها
String

ویژگی سیستم را دریافت کنید

public abstract ListenableFuture<String> getSystemProperty (String name)

یک پرس‌وجوی ناهمزمان بالقوه برای یک ویژگی سیستم انجام دهید.

پارامترها
name String : نام مقداری که قرار است برگردانده شود.

بازگشت‌ها
ListenableFuture<String> یک ListenableFuture. ERROR(get/Future#get() get) ممکن است مقدار null را برگرداند.