एक से ज़्यादा टारगेट के लिए प्रिपरर

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

बेस इंटरफ़ेस

बुनियादी इंटरफ़ेस 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 के तौर पर घोषित किया जा सकता है. यह इस बात पर निर्भर करता है कि सेटअप का क्रम क्या है.