與目標準備工具類似,多目標準備工具可同時設定多部裝置。舉例來說,透過藍牙連線兩部裝置進行測試時,就會使用這個方法。
基本介面
基礎介面為 IMultiTargetPreparer,可實作要執行的 setUp 方法。建議您實作基本抽象類別 BaseMultiTargetPreparer,這個類別提供內建的停用功能,可輕鬆停用準備工具。
多目標準備工具也會直接提供 tearDown 方法,用於任何清除作業。
建議
建議每位準備者只負責一項主要功能。這樣一來,您就能更輕鬆地重複使用準備工具。
新增準備者前,也請先查看可用準備者清單,以免重複作業。準備者適用於
tools/tradefederation/core/src/com/android/tradefed/targetprep/multi/。
多目標準備者可設定的裝置數量沒有上限。所有裝置都可在要實作的介面中找到。IInvocationContext
XML 設定
物件標記為 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 setUptarget_preparer setUpmulti_target_preparer setUpmulti_target_preparer tearDowntarget_preparer tearDownmulti_pre_target_preparer tearDown
任何多目標準備者都可以宣告為 multi_target_preparer 或 multi_pre_target_preparer,視所需的設定順序而定。