मल्टी-टारगेट तैयार करने वाले लोग

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

बेस इंटरफ़ेस

बेस इंटरफ़ेस IMultiTargetPreparer है. इसकी मदद से, setUp तरीके को लागू किया जा सकता है. हमारा सुझाव है कि आप अपनी बेसिक ऐब्सट्रैक्ट क्लास BaseMultiTargetPreparer को लागू करें. इसमें ऐप्लिकेशन को बंद करने की सुविधा देने वाली पहले से मौजूद सुविधा होती है, ताकि ट्रेनिंग ऐप्लिकेशन को बंद करने में आसानी हो.

एक से ज़्यादा टारगेट तैयार करने वाले, सीधे तौर पर किसी भी क्लीनअप ऑपरेशन के लिए tearDown तरीका भी उपलब्ध कराते हैं.

सुझाव

हमारा सुझाव है कि हर व्यक्ति को एक ही मुख्य फ़ंक्शन के लिए सीमित किया जाए. इससे, प्रिपरर को आसानी से फिर से इस्तेमाल किया जा सकता है.

नया प्रिपरर जोड़ने से पहले, उपलब्ध प्रिपरर की सूची भी देखें, ताकि डुप्लीकेट काम न हो. प्रिपरर, tools/tradefederation/core/src/com/android/tradefed/targetprep/multi/ में उपलब्ध हैं.

मल्टी-टारगेट तैयार करने वाला व्यक्ति, जितने चाहें उतने डिवाइस सेट अप कर सकता है. लागू करने के लिए, इंटरफ़ेस के IInvocationContext में सभी डिवाइस उपलब्ध हैं.

एक्सएमएल कॉन्फ़िगरेशन

ऑब्जेक्ट टैग multi_target_preparer है. उदाहरण के लिए:

<multi_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_target_preparer>

ऑपरेशन का क्रम

  1. multi_target_preparer, target_preparer के बाद setUp को लागू करता है.
  2. multi_target_preparer, टारगेट क्लीनर से पहले tearDown को एक्ज़ीक्यूट करता है.

इससे हमेशा सेटअप के सभी चरणों को पूरा नहीं किया जा सकता. इसलिए, एक्सएमएल में मल्टी-टारगेट प्रिपरर को multi_pre_target_preparer के तौर पर तय किया जा सकता है और target_preparer इंस्टेंस से पहले उसे लागू किया जा सकता है.

<multi_pre_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_pre_target_preparer>

ऑपरेशन का पूरा क्रम इस तरह है:

  1. multi_pre_target_preparer setUp
  2. target_preparer setUp
  3. multi_target_preparer setUp
  4. multi_target_preparer tearDown
  5. target_preparer tearDown
  6. multi_pre_target_preparer tearDown

किसी भी मल्टी-टारगेट प्रिपरर को multi_target_preparer या multi_pre_target_preparer के तौर पर घोषित किया जा सकता है. यह इस बात पर निर्भर करता है कि सेटअप का क्रम क्या है.