Ab dem 27. März 2025 empfehlen wir, android-latest-release
anstelle von aosp-main
zu verwenden, um AOSP zu erstellen und Beiträge dazu zu leisten. Weitere Informationen finden Sie unter Änderungen am AOSP.
Trade Federation mit Scripting Layer für Android verwenden
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
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.
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2025-07-27 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-07-27 (UTC)."],[],[],null,["# Use Trade Federation with Scripting Layer for Android\n\nScripting Layer for Android, SL4A, is an\nautomation toolset for calling Android APIs in a platform-independent manner.\nIt supports both remote automation via `adb` and execution of scripts\nfrom on-device via a series of lightweight translation layers.\n\nThe project is located at [platform/external/sl4a](https://android.googlesource.com/platform/external/sl4a/).\n\nUse\n---\n\nYou can follow the [SL4A README](https://android.googlesource.com/platform/external/sl4a/+/refs/heads/android16-release/README.md)\nto build and install it manually. And when running through Tradefed, you\ncan take advantage of some of the harness utilities to make use easier.\n\n### Download and install\n\nYou can start by reviewing\n[BT-discovery-sl4a.xml](https://android.googlesource.com/platform/tools/tradefederation/contrib/+/refs/heads/android16-release/res/config/google/example/BT-discovery-sl4a.xml),\nan example Tradefed configuration that uses two devices. The `SL4A.apk` is\navailable in most device builds within their `tests` folder.\n\nThe Tradefed example above automatically fetches the builds, flashes both\ndevices and installs `SL4A.apk` on both devices. You can run it like so: \n\n source build/envsetup.sh\n lunch\n make sl4a\n tradefed.sh run google/example/BT-discovery-sl4a\n\nOr once built: \n\n ./tradefed.sh run google/example/BT-discovery-sl4a\n\n### Write a test in Tradefed using SL4A\n\nYou can follow the test sample describe above:\n[Sl4aBluetoothDiscovery.java](https://android.googlesource.com/platform/tools/tradefederation/contrib/+/refs/heads/android16-release/src/com/android/tradefed/Sl4aBluetoothDiscovery.java).\nThis gives a good example of the flow to use SL4A within a Tradefed test.\n\n### SL4A API documentation\n\nThe complete list of callbacks available through SL4A can be generated. From the\nSL4A source directory, `platform/external/sl4a/`, run this command: \n\n python Docs/generate_api_reference_md.py\n\nIn the Docs directory there will be an `ApiReference.md` file that contains\nthe RPC functions available in SL4A, as well as documentation for the RPC\nfunctions."]]