Scripting Layer for Android (SL4A) הוא ערכת כלים לאוטומציה שמאפשרת להפעיל ממשקי API של Android באופן בלתי תלוי בפלטפורמה.
הוא תומך באוטומציה מרחוק באמצעות adb ובהרצת סקריפטים מהמכשיר באמצעות סדרה של שכבות תרגום קלות משקל.
הפרויקט נמצא במיקום platform/external/sl4a.
שימוש
אפשר לפעול לפי ההוראות בקובץ ה-README של SL4A כדי ליצור ולהתקין אותו באופן ידני. כשמריצים את Tradefed, אפשר להשתמש בכמה כלי עזר של ה-harness כדי להקל על השימוש.
הורדה והתקנה
אפשר להתחיל בבדיקת BT-discovery-sl4a.xml, דוגמה להגדרת Tradefed שמשתמשת בשני מכשירים. הקובץ SL4A.apk זמין ברוב גרסאות ה-build של המכשירים בתיקייה tests.
בדוגמה של Tradefed שלמעלה, המערכת מאחזרת באופן אוטומטי את גרסאות ה-build, מעבירה אותן לשני המכשירים ומתקינה את 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
אפשר ליצור את הרשימה המלאה של פונקציות ה-callback שזמינות דרך SL4A. מריצים את הפקודה הבאה מספריית קובצי המקור של SL4A, platform/external/sl4a/:
python Docs/generate_api_reference_md.py
בספריית Docs יהיה קובץ ApiReference.md שמכיל את פונקציות ה-RPC שזמינות ב-SL4A, וגם תיעוד של פונקציות ה-RPC.