Scripting Layer for Android (SL4A) ist ein Automatisierungs-Toolset zum Plattformunabhängigen Aufrufen von Android APIs.
Es unterstützt sowohl die Remote-Automatisierung über adb
als auch die Ausführung von Scripts auf dem Gerät über eine Reihe von leichten Übersetzungsschichten.
Das Projekt befindet sich unter platform/external/sl4a.
Verwenden
Folgen Sie der SL4A-README, um sie manuell zu erstellen und zu installieren. Wenn Sie Tradefed verwenden, können Sie einige der Harness-Dienstprogramme nutzen, um die Nutzung zu vereinfachen.
Herunterladen und installieren
Sehen Sie sich zuerst BT-discovery-sl4a.xml an, eine Beispielkonfiguration für Tradefed mit zwei Geräten. Die SL4A.apk
ist in den meisten Geräte-Builds im Ordner tests
verfügbar.
Im Tradefed-Beispiel oben werden die Builds automatisch abgerufen, beide Geräte geflasht und SL4A.apk
auf beiden Geräten installiert. Sie können es so ausführen:
source build/envsetup.sh
lunch
make sl4a
tradefed.sh run google/example/BT-discovery-sl4a
Oder nach dem Erstellen:
./tradefed.sh run google/example/BT-discovery-sl4a
Test in Tradefed mit SL4A schreiben
Sie können dem oben beschriebenen Testbeispiel folgen: Sl4aBluetoothDiscovery.java. Dies ist ein gutes Beispiel für die Verwendung von SL4A in einem Tradefed-Test.
SL4A API-Dokumentation
Die vollständige Liste der über SL4A verfügbaren Rückrufe kann generiert werden. Führen Sie im SL4A-Quellverzeichnis platform/external/sl4a/
diesen Befehl aus:
python Docs/generate_api_reference_md.py
Im Verzeichnis „Docs“ befindet sich eine ApiReference.md
-Datei mit den in SL4A verfügbaren RPC-Funktionen sowie eine Dokumentation zu den RPC-Funktionen.