與目標準備工具類似,多目標準備工具可讓您同時設定多部裝置。舉例來說,如果要透過藍牙連線兩部裝置進行測試,就會使用這個方法。
基礎介面
基礎介面為 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 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
。