ใช้ Trade Federation กับเลเยอร์สคริปต์สําหรับ Android

เลเยอร์การเขียนสคริปต์สำหรับ Android หรือ SL4A เป็น ชุดเครื่องมืออัตโนมัติสำหรับการเรียก Android API ในลักษณะที่ไม่ขึ้นกับแพลตฟอร์ม โดยรองรับทั้งการทำงานอัตโนมัติระยะไกลผ่าน adb และการเรียกใช้สคริปต์ จากอุปกรณ์ผ่านเลเยอร์การแปลที่มีน้ำหนักเบาหลายชั้น

โปรเจ็กต์อยู่ที่ platform/external/sl4a

ใช้

คุณสามารถทำตามไฟล์ README ของ SL4A เพื่อสร้างและติดตั้งด้วยตนเอง และเมื่อเรียกใช้ผ่าน Tradefed คุณ จะใช้ประโยชน์จากยูทิลิตีของ Harness บางอย่างเพื่อให้ใช้งานได้ง่ายขึ้น

ดาวน์โหลดและติดตั้ง

คุณเริ่มต้นได้โดยการตรวจสอบ BT-discovery-sl4a.xml ซึ่งเป็นตัวอย่างการกำหนดค่า Tradefed ที่ใช้อุปกรณ์ 2 เครื่อง SL4A.apk อยู่ในบิลด์ของอุปกรณ์ส่วนใหญ่ภายในโฟลเดอร์ tests

ตัวอย่าง Tradefed ด้านบนจะดึงข้อมูลบิลด์โดยอัตโนมัติ แฟลชทั้ง 2 อุปกรณ์ และติดตั้ง SL4A.apk ในทั้ง 2 อุปกรณ์ คุณเรียกใช้ได้ดังนี้

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