BackgroundDeviceAction

public class BackgroundDeviceAction
extends Thread

java.lang.Object
java.lang.Thread
  com.android.tradefed.device.BackgroundDeviceAction


यह क्लास, दिए गए डिवाइस पर कोई कमांड चलाती है. साथ ही, जब तक कार्रवाई रद्द नहीं की जाती, तब तक यह कमांड बार-बार चलती रहती है.

जब इस क्लास को चलाया जाता है, तो कमांड को डिवाइस पर अलग थ्रेड में चलाया जाता है. साथ ही, आउटपुट को अस्थायी होस्ट फ़ाइल में इकट्ठा किया जाता है.

ऐसा इसलिए किया जाता है, ताकि:

  • अगर किसी टेस्ट के दौरान डिवाइस हमेशा के लिए ऑफ़लाइन हो जाता है, तो लॉग डेटा सेव रहे.
  • डिवाइस के सर्कुलर लॉग में फ़िट होने वाले डेटा से ज़्यादा डेटा कैप्चर किया जा सके.

खास जानकारी

कॉन्स्टेंट

String BACKGROUND_DEVICE_ACTION

सार्वजनिक कंस्ट्रक्टर

BackgroundDeviceAction(String command, String descriptor, ITestDevice device, IShellOutputReceiver receiver, int startDelay)
BackgroundDeviceAction(String command, String descriptor, ITestDevice device, IShellOutputReceiver receiver, int startDelay, boolean noRepetitiveLogging)

BackgroundDeviceAction बनाता है

पब्लिक मेथड

void cancel()

कमांड रद्द करता है.

boolean isCancelled()

अगर कमांड रद्द कर दी गई है.

void run()

कमांड को तब तक दोहराता है, जब तक उसे रद्द नहीं किया जाता.

प्रोटेक्टेड मेथड

void waitForDeviceRecovery(String exceptionType)

अगर डिवाइस किसी भी वजह से ऑफ़लाइन हो जाता है, तो रिकवरी की प्रोसेस मुख्य थ्रेड से शुरू होगी . इसलिए, हमें तब तक इंतज़ार करना होगा, जब तक डिवाइस ठीक नहीं हो जाता या डिवाइस उपलब्ध न होने की वजह से, प्रोसेस पूरी नहीं हो पाती.

कॉन्स्टेंट

BACKGROUND_DEVICE_ACTION

public static final String BACKGROUND_DEVICE_ACTION

कॉन्स्टेंट वैल्यू: "BackgroundDeviceAction"

सार्वजनिक कंस्ट्रक्टर

BackgroundDeviceAction

public BackgroundDeviceAction (String command, 
                String descriptor, 
                ITestDevice device, 
                IShellOutputReceiver receiver, 
                int startDelay)

पैरामीटर
command String

descriptor String

device ITestDevice

receiver IShellOutputReceiver

startDelay int

BackgroundDeviceAction

public BackgroundDeviceAction (String command, 
                String descriptor, 
                ITestDevice device, 
                IShellOutputReceiver receiver, 
                int startDelay, 
                boolean noRepetitiveLogging)

BackgroundDeviceAction बनाता है

पैरामीटर
command String: वह कमांड जिसे चलाना है

descriptor String: कमांड की जानकारी. इसका इस्तेमाल सिर्फ़ लॉगिंग के लिए किया जाता है.

device ITestDevice: वह डिवाइस जिस पर कमांड चलानी है

receiver IShellOutputReceiver: वह रिसीवर जो कमांड का आउटपुट इकट्ठा करता है

startDelay int: डिवाइस के ऑनलाइन होने के बाद इंतज़ार करने का समय

noRepetitiveLogging boolean: बार-बार लॉगिंग को बंद करना है या नहीं

पब्लिक मेथड

cancel

public void cancel ()

कमांड रद्द करता है.

isCancelled

public boolean isCancelled ()

अगर कमांड रद्द कर दी गई है.

रिटर्न
boolean

run

public void run ()

कमांड को तब तक दोहराता है, जब तक उसे रद्द नहीं किया जाता.

प्रोटेक्टेड मेथड

waitForDeviceRecovery

protected void waitForDeviceRecovery (String exceptionType)

अगर डिवाइस किसी भी वजह से ऑफ़लाइन हो जाता है, तो रिकवरी की प्रोसेस मुख्य थ्रेड से शुरू होगी . इसलिए, हमें तब तक इंतज़ार करना होगा, जब तक डिवाइस ठीक नहीं हो जाता या डिवाइस उपलब्ध न होने की वजह से, प्रोसेस पूरी नहीं हो पाती.