Android용 스크립팅 레이어인 SL4A는 플랫폼과 상관없는 방식으로 Android API를 호출하기 위한 자동화 도구 모음입니다.
adb
를 통한 원격 자동화와 일련의 가벼운 변환 레이어를 통한 기기에서의 스크립트 실행을 모두 지원합니다.
프로젝트는 platform/external/sl4a에서 찾을 수 있습니다.
사용
SL4A README에 따라 이를 수동으로 빌드하고 설치할 수 있습니다. 또한 Tradefed를 통해 실행 중인 경우에는 몇몇 하네스 유틸리티를 활용하여 좀 더 쉽게 사용할 수 있습니다.
다운로드 및 설치
우선 두 기기를 사용하는 Tradefed 구성의 예인 BT-discovery-sl4a.xml을 검토할 수 있습니다. 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
SL4A를 사용하여 Tradefed에서 테스트 작성
위에서 설명한 테스트 샘플을 따를 수 있습니다(Sl4aBluetoothDiscovery.java). 이는 Tradefed 테스트 내에서 SL4A를 사용하기 위한 흐름에 관한 좋은 예시를 제공합니다.
SL4A API 문서
SL4A를 통해 사용 가능한 전체 콜백 목록을 생성할 수 있습니다. SL4A 소스 디렉터리 platform/external/sl4a/
에서 다음 명령어를 실행합니다.
python Docs/generate_api_reference_md.py
문서 디렉터리에는 SL4A에서 제공되는 RPC 함수와 RPC 함수에 관한 문서가 포함된 ApiReference.md
파일이 있습니다.