टारगेट प्रिपेयरर की तरह ही, मल्टी-टारगेट प्रिपेयरर की मदद से एक साथ कई डिवाइसों को सेटअप किया जा सकता है. उदाहरण के लिए, इसका इस्तेमाल तब किया जाएगा, जब टेस्टिंग के लिए ब्लूटूथ से दो डिवाइस कनेक्ट किए जा रहे हों.
बेस इंटरफ़ेस
बुनियादी इंटरफ़ेस 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>
कार्रवाइयों का क्रम
multi_target_preparer
,target_preparer
के बादsetUp
को लागू करता है.multi_target_preparer
, टारगेट क्लीनर को पहले एक्ज़ीक्यूट करता है.tearDown
इससे सेटअप के सभी चरणों को पूरा करने की अनुमति हमेशा नहीं मिलती. इसलिए, XML में मल्टी-टारगेट प्रिपेयरर को multi_pre_target_preparer
के तौर पर तय किया जा सकता है और इसे target_preparer
इंस्टेंस से पहले लागू किया जा सकता है.
<multi_pre_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_pre_target_preparer>
ऑपरेशन का क्रम इस तरह होता है:
multi_pre_target_preparer setUp
target_preparer setUp
multi_target_preparer setUp
multi_target_preparer tearDown
target_preparer tearDown
multi_pre_target_preparer tearDown
सेटअप के लिए ज़रूरी क्रम के आधार पर, किसी भी मल्टी-टारगेट प्रिपेयरर को multi_target_preparer
या multi_pre_target_preparer
के तौर पर एलान किया जा सकता है.