Utiliser Trade Federation avec la couche de script pour Android

Scripting Layer for Android (SL4A) est un ensemble d'outils d'automatisation permettant d'appeler les API Android de manière indépendante de la plate-forme. Il est compatible avec l'automatisation à distance via adb et l'exécution de scripts depuis l'appareil via une série de couches de traduction légères.

Le projet se trouve à l'adresse platform/external/sl4a.

Utiliser

Vous pouvez suivre le fichier README de SL4A pour le compiler et l'installer manuellement. Lorsque vous exécutez Tradefed, vous pouvez profiter de certains utilitaires du harnais pour faciliter l'utilisation.

Télécharger et installer

Vous pouvez commencer par examiner BT-discovery-sl4a.xml, un exemple de configuration Tradefed qui utilise deux appareils. Le SL4A.apk est disponible dans la plupart des versions d'appareil, dans leur dossier tests.

L'exemple Tradefed ci-dessus récupère automatiquement les builds, flashe les deux appareils et installe SL4A.apk sur les deux appareils. Vous pouvez l'exécuter comme suit :

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

Ou une fois la campagne créée :

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

Écrire un test dans Tradefed à l'aide de SL4A

Vous pouvez suivre l'exemple de test décrit ci-dessus : Sl4aBluetoothDiscovery.java. Cela donne un bon exemple du flux à utiliser pour SL4A dans un test Tradefed.

Documentation de l'API SL4A

La liste complète des rappels disponibles via SL4A peut être générée. Depuis le répertoire source SL4A, platform/external/sl4a/, exécutez cette commande :

python Docs/generate_api_reference_md.py

Dans le répertoire Docs, vous trouverez un fichier ApiReference.md contenant les fonctions RPC disponibles dans SL4A, ainsi que la documentation de ces fonctions.