La capa de secuencias de comandos para Android, SL4A, es un conjunto de herramientas de automatización para llamar a las APIs de Android de forma independiente de la plataforma.
Es compatible con la automatización remota a través de adb
y la ejecución de secuencias de comandos desde el dispositivo a través de una serie de capas de traducción ligeras.
El proyecto se encuentra en platform/external/sl4a.
Usar
Puedes seguir el archivo README de SL4A para compilarlo y, luego, instalarlo de forma manual. Y cuando se ejecuta a través de Tradefed, puedes beneficiarte de algunas de las utilidades del arnés para facilitar el uso.
Descargar e instalar
Puedes comenzar por revisar BT-discovery-sl4a.xml, un ejemplo de configuración de Tradefed que usa dos dispositivos. El SL4A.apk
está disponible en la mayoría de las compilaciones de dispositivos dentro de su carpeta tests
.
En el ejemplo de Tradefed anterior, se recuperan automáticamente las compilaciones, se escriben en ambos dispositivos y se instala SL4A.apk
en ambos. Puedes ejecutarlo de la siguiente manera:
source build/envsetup.sh
lunch
make sl4a
tradefed.sh run google/example/BT-discovery-sl4a
O una vez que se compila:
./tradefed.sh run google/example/BT-discovery-sl4a
Cómo escribir una prueba en Tradefed con SL4A
Puedes seguir el ejemplo de prueba que se describió anteriormente: Sl4aBluetoothDiscovery.java. Esto proporciona un buen ejemplo del flujo para usar SL4A en una prueba de Tradefed.
Documentación de la API de SL4A
Se puede generar la lista completa de devoluciones de llamada disponibles a través de SL4A. Desde el directorio del código fuente de SL4A, platform/external/sl4a/
, ejecuta este comando:
python Docs/generate_api_reference_md.py
En el directorio Docs, habrá un archivo ApiReference.md
que contiene las funciones de RPC disponibles en SL4A, así como la documentación para las funciones de RPC.