Scripting Layer for Android (SL4A) – это набор инструментов автоматизации для вызова API Android независимо от платформы.
Он поддерживает как удаленную автоматизацию через adb, так и выполнение скриптов на устройстве через серию легковесных слоев трансляции.
Проект находится по адресу platform/external/sl4a.
Использовать
Вы можете следовать инструкциям в файле SL4A README, чтобы создать и установить его вручную. При использовании Tradefed можно воспользоваться некоторыми утилитами, чтобы упростить работу.
Скачать и установить
Начните с файла BT-discovery-sl4a.xml – примера конфигурации Tradefed, в которой используются два устройства. Файл SL4A.apk доступен в большинстве сборок устройств в папке tests.
В приведенном выше примере Tradefed автоматически получает сборки, прошивает оба устройства и устанавливает на них приложение "SL4A.apk". Вот как это сделать:
source build/envsetup.sh
lunch
make sl4a
tradefed.sh run google/example/BT-discovery-sl4a
Или после создания:
./tradefed.sh run google/example/BT-discovery-sl4a
Как написать тест в Tradefed с помощью SL4A
Вы можете воспользоваться примером теста, описанным выше: Sl4aBluetoothDiscovery.java. Это хороший пример того, как использовать SL4A в тесте Tradefed.
Документация по SL4A API
Можно сгенерировать полный список обратных вызовов, доступных через SL4A. В каталоге с исходными файлами SL4A platform/external/sl4a/ выполните следующую команду:
python Docs/generate_api_reference_md.py
В каталоге Docs будет файл ApiReference.md, содержащий функции RPC, доступные в SL4A, а также документацию по функциям RPC.