IShellEnabledDevice

public interface IShellEnabledDevice

com.android.ddmlib.IShellEnabledDevice


कोई ऐब्स्ट्रैक्ट डिवाइस, जो शेल कमांड पा सकता है.

खास जानकारी

पब्लिक मेथड

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

डिवाइस पर शेल कमांड को लागू करता है और नतीजे को receiver को भेजता है.

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

डिवाइस पर शेल कमांड को लागू करता है और नतीजे को receiver को भेजता है.

abstract String getName()

इस डिवाइस के लिए, (समझ में आने वाला) नाम दिखाता है.

abstract ListenableFuture<String> getSystemProperty(String name)

सिस्टम प्रॉपर्टी के लिए, एसिंक्रोनस क्वेरी करता है.

पब्लिक मेथड

executeShellCommand

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

डिवाइस पर शेल कमांड को लागू करता है और नतीजे को receiver को भेजता है.

maxTimeToOutputResponse का इस्तेमाल, डिवाइस से कमांड का आउटपुट पाने के लिए ज़्यादा से ज़्यादा इंतज़ार करने के समय के तौर पर किया जाता है.
अगर शेल कमांड, maxTimeToOutputResponse से ज़्यादा समय तक कोई आउटपुट नहीं देता है, तो यह तरीका ShellCommandUnresponsiveException दिखाएगा.

लॉग आउटपुट जैसे कमांड के लिए, maxTimeToOutputResponse वैल्यू 0 होनी चाहिए. इसका मतलब है कि यह तरीका कभी भी कोई गड़बड़ी नहीं दिखाएगा और तब तक ब्लॉक रहेगा, जब तक रिसीवर का IShellOutputReceiver.isCancelled() true नहीं दिखाता.

पैरामीटर
command String: लागू की जाने वाली शेल कमांड

receiver IShellOutputReceiver: वह IShellOutputReceiver, जिसे शेल कमांड का आउटपुट मिलेगा

maxTimeout long: कमांड के वापस आने के लिए ज़्यादा से ज़्यादा टाइम आउट. 0 का मतलब है कि कोई ज़्यादा से ज़्यादा टाइम आउट लागू नहीं किया जाएगा.

maxTimeToOutputResponse long: वह ज़्यादा से ज़्यादा समय जिसके दौरान कमांड को कोई जवाब नहीं देने की अनुमति है. 0 का मतलब है कि यह तरीका, कमांड के आउटपुट के लिए हमेशा इंतज़ार करेगा (जब तक receiver एक्ज़ीक्यूशन को रद्द नहीं करता) और कभी भी कोई गड़बड़ी नहीं दिखाएगा.

maxTimeUnits TimeUnit: शून्य से बड़ी maxTimeout और maxTimeToOutputResponse वैल्यू के लिए यूनिट.

थ्रॉ
AdbCommandRejectedException अगर adb कमांड को अस्वीकार करता है.
ShellCommandUnresponsiveException अगर शेल कमांड, maxTimeToOutputResponse से ज़्यादा समय तक कोई आउटपुट नहीं भेजता है.
TimeoutException कमांड भेजते समय, कनेक्शन पर टाइम आउट होने पर.
IOException कनेक्शन पर I/O से जुड़ी गड़बड़ी होने पर.

इन्हें भी देखें:

executeShellCommand

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

डिवाइस पर शेल कमांड को लागू करता है और नतीजे को receiver को भेजता है.

maxTimeToOutputResponse का इस्तेमाल, डिवाइस से कमांड का आउटपुट पाने के लिए ज़्यादा से ज़्यादा इंतज़ार करने के समय के तौर पर किया जाता है.
अगर शेल कमांड, maxTimeToOutputResponse से ज़्यादा समय तक कोई आउटपुट नहीं देता है, तो यह तरीका ShellCommandUnresponsiveException दिखाएगा.

लॉग आउटपुट जैसे कमांड के लिए, maxTimeToOutputResponse वैल्यू 0 होनी चाहिए. इसका मतलब है कि यह तरीका कभी भी कोई गड़बड़ी नहीं दिखाएगा और तब तक ब्लॉक रहेगा, जब तक रिसीवर का IShellOutputReceiver.isCancelled() true नहीं दिखाता.

पैरामीटर
command String: लागू की जाने वाली शेल कमांड

receiver IShellOutputReceiver: वह IShellOutputReceiver, जिसे शेल कमांड का आउटपुट मिलेगा

maxTimeToOutputResponse long: वह ज़्यादा से ज़्यादा समय जिसके दौरान कमांड को कोई जवाब नहीं देने की अनुमति है. 0 का मतलब है कि यह तरीका, कमांड के आउटपुट के लिए हमेशा इंतज़ार करेगा (जब तक receiver एक्ज़ीक्यूशन को रद्द नहीं करता) और कभी भी कोई गड़बड़ी नहीं दिखाएगा.

maxTimeUnits TimeUnit: शून्य से बड़ी maxTimeToOutputResponse वैल्यू के लिए यूनिट.

थ्रॉ
AdbCommandRejectedException अगर adb कमांड को अस्वीकार करता है.
ShellCommandUnresponsiveException अगर शेल कमांड, maxTimeToOutputResponse से ज़्यादा समय तक कोई आउटपुट नहीं भेजता है.
TimeoutException कमांड भेजते समय, कनेक्शन पर टाइम आउट होने पर.
IOException कनेक्शन पर I/O से जुड़ी गड़बड़ी होने पर.

इन्हें भी देखें:

getName

public abstract String getName ()

इस डिवाइस के लिए, (समझ में आने वाला) नाम दिखाता है. आम तौर पर, यह AVD के लिए AVD का नाम होता है. वहीं, डिवाइसों के लिए, यह मैन्युफ़ैक्चरर के नाम, मॉडल के नाम, और सीरियल नंबर का कॉम्बिनेशन होता है.

रिटर्न
String

getSystemProperty

public abstract ListenableFuture<String> getSystemProperty (String name)

सिस्टम प्रॉपर्टी के लिए, एसिंक्रोनस क्वेरी करता है.

पैरामीटर
name String: दिखाई जाने वाली वैल्यू का नाम.

रिटर्न
ListenableFuture<String> एक ListenableFuture. get की वैल्यू, 'कुछ नहीं' हो सकती है.