SL4A (Scripting Layer for Android) ist eine Sammlung von Automatisierungstools zum plattformunabhängigen Aufrufen von Android-APIs.
Es unterstützt sowohl die Remote-Automatisierung über adb
als auch die Ausführung von Skripts auf dem Gerät über eine Reihe von einfachen Übersetzungsebenen.
Das Projekt befindet sich unter platform/external/sl4a.
Verwenden
Sie können der SL4A-README-Datei folgen, um die App manuell zu erstellen und zu installieren. Wenn Sie Tradefed verwenden, können Sie einige der Harness-Dienstprogramme nutzen, um die Verwendung zu vereinfachen.
Herunterladen und installieren
Sehen Sie sich zuerst BT-discovery-sl4a.xml an, eine Beispielkonfiguration für Tradefed, in der zwei Geräte verwendet werden. Die Datei SL4A.apk
ist in den meisten Geräte-Builds im Ordner tests
verfügbar.
Im obigen Tradefed-Beispiel 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 der Erstellung:
./tradefed.sh run google/example/BT-discovery-sl4a
Test in Tradefed mit SL4A schreiben
Sie können dem oben beschriebenen Testbeispiel Sl4aBluetoothDiscovery.java folgen. Dies ist ein gutes Beispiel für den Ablauf, der für die Verwendung von SL4A in einem Tradefed-Test erforderlich ist.
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 Docs-Verzeichnis befindet sich eine ApiReference.md
-Datei, die die in SL4A verfügbaren RPC-Funktionen sowie die Dokumentation für die RPC-Funktionen enthält.