Usar a Trade Federation com a camada de scripting para Android

A Scripting Layer for Android, SL4A, é uma de automação para chamar APIs do Android de maneira independente da plataforma. Ele oferece suporte à automação remota via adb e à execução de scripts no dispositivo por uma série de camadas leves de tradução.

O projeto está localizado em platform/external/sl4a.

Uso

Siga o README do SL4A (em inglês). para criá-lo e instalá-lo manualmente. E, ao executar o Tradefed, você pode aproveitar alguns dos utilitários de harness para facilitar o uso.

Fazer o download e instalar

Comece analisando BT-discovery-sl4a.xml (link em inglês) um exemplo de configuração do Tradefed que usa dois dispositivos. O SL4A.apk é disponível na maioria dos builds de dispositivos na pasta tests.

O exemplo do Tradefed acima busca automaticamente os builds, atualiza os dois dispositivos e instala o app SL4A.apk em ambos. Você pode executá-lo desta forma:

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

Ou depois de construído:

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

Criar um teste no Tradefed usando o SL4A

É possível seguir o exemplo de teste descrito acima: Sl4aBluetoothDiscovery.java (em inglês). Isso mostra um bom exemplo do fluxo para usar o SL4A em um teste da Tradefed.

Documentação da API SL4A

A lista completa de callbacks disponíveis pelo SL4A pode ser gerada. Na guia Diretório de origem do SL4A, platform/external/sl4a/, execute este comando:

python Docs/generate_api_reference_md.py

No diretório "Documentos", haverá um arquivo ApiReference.md que contém as funções RPC disponíveis no SL4A, bem como a documentação para a .