A partir de 27 de março de 2025, recomendamos usar android-latest-release
em vez de aosp-main
para criar e contribuir com o AOSP. Para mais informações, consulte Mudanças no AOSP.
Usar a Trade Federation com a camada de script para Android
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
A camada de script para Android, SL4A, é um
conjunto de ferramentas de automação para chamar APIs do Android de forma independente da plataforma.
Ele oferece suporte à automação remota por adb
e à execução de scripts
no dispositivo por meio de uma série de camadas de tradução leves.
O projeto está localizado em platform/external/sl4a.
Uso
Siga o README da SL4A
para criar e instalar 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,
um exemplo de configuração do Tradefed que usa dois dispositivos. O SL4A.apk
está
disponível na maioria dos builds de dispositivos na pasta tests
.
O exemplo de Tradefed acima extrai automaticamente os builds, faz o flash dos dois
dispositivos e instala o SL4A.apk
nos dois dispositivos. Execute da seguinte maneira:
source build/envsetup.sh
lunch
make sl4a
tradefed.sh run google/example/BT-discovery-sl4a
Ou, depois de criar:
./tradefed.sh run google/example/BT-discovery-sl4a
Criar um teste no Tradefed usando o SL4A
Siga o exemplo de teste descrito acima:
Sl4aBluetoothDiscovery.java.
Esse é um bom exemplo do fluxo para usar o SL4A em um teste Tradefed.
Documentação da API SL4A
A lista completa de callbacks disponíveis na SL4A pode ser gerada. No diretório de origem do
SL4A, platform/external/sl4a/
, execute este comando:
python Docs/generate_api_reference_md.py
No diretório Docs, haverá um arquivo ApiReference.md
que contém
as funções de RPC disponíveis no SL4A, além da documentação para as funções
de RPC.
O conteúdo e os exemplos de código nesta página estão sujeitos às licenças descritas na Licença de conteúdo. Java e OpenJDK são marcas registradas da Oracle e/ou suas afiliadas.
Última atualização 2025-07-27 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 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."]]