使用 Trade Federation 與 Android 的 Scripting Layer

適用於 Android 的 Scripting Layer (SL4A) 是一組自動化工具,可以不依賴平台的方式呼叫 Android API。它支援透過 adb 進行的遠端自動化,以及透過一系列輕量轉譯層在裝置端執行指令碼。

專案位於 platform/external/sl4a

使用

您可以按照 SL4A README 手動建構及安裝。執行 Tradefed 外掛程式時 善用一些智慧型公用程式,更方便使用。

下載並安裝

您可以先查看 BT-discovery-sl4a.xml,這是使用兩部裝置的 Tradefed 設定範例。SL4A.apk 可在大多數裝置版本的 tests 資料夾中使用。

上述 Tradefed 範例會自動擷取版本、對兩部裝置進行閃燈作業,並在兩部裝置上安裝 SL4A.apk。您可以執行如下指令碼:

source build/envsetup.sh
lunch
make sl4a
tradefed.sh run google/example/BT-discovery-sl4a

或建立完成後:

./tradefed.sh run google/example/BT-discovery-sl4a

使用 SL4A 在 Tradefed 中編寫測試

您可以按照上述說明的測試範例操作: Sl4aBluetoothDiscovery.java。 這個例子說明瞭如何在交易測試中使用 SL4A。

SL4A API 說明文件

您可以產生透過 SL4A 提供的完整回呼清單。從 SL4A 來源目錄 platform/external/sl4a/,請執行下列指令:

python Docs/generate_api_reference_md.py

文件目錄會顯示含有以下內容的 ApiReference.md 檔案: SL4A 中提供的 RPC 函式,以及 RPC 的說明文件 函式。