SL4A (Scripting Layer for Android) — это набор инструментов автоматизации для вызова API Android платформенно-независимым способом. Он поддерживает как удалённую автоматизацию через adb , так и выполнение скриптов на устройстве с помощью ряда легковесных слоев трансляции.
Проект расположен по адресу platform/external/sl4a .
Использовать
Вы можете следовать инструкциям в файле README для сборки и установки SL4A вручную. А при использовании 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.
Документация по API SL4A
Полный список доступных в SL4A функций обратного вызова можно сгенерировать. Для этого из каталога исходного кода SL4A, platform/external/sl4a/ , выполните следующую команду:
python Docs/generate_api_reference_md.py
В каталоге Docs будет находиться файл ApiReference.md , содержащий доступные в SL4A функции RPC, а также документацию по этим функциям.