שימוש ב-Trade Federation עם שכבת סקריפטים ל-Android

Scripting Layer for Android‏ (SL4A) הוא ערכת כלים לאוטומציה שמאפשרת לבצע קריאות לממשקי API של Android באופן בלתי תלוי בפלטפורמה. הוא תומך גם באוטומציה מרחוק באמצעות adb וגם בהפעלת סקריפטים מהמכשיר באמצעות סדרה של שכבות תרגום קלילות.

הפרויקט נמצא בכתובת platform/external/sl4a.

שימוש

אפשר לבצע את ההוראות שמפורטות בקובץ README של SL4A כדי ליצור ולהתקין אותו באופן ידני. בנוסף, כשמריצים את הבדיקה דרך Tradefed, אפשר להשתמש בחלק מהשירותים של ערכת הכלים כדי להקל על השימוש.

הורדה והתקנה

אפשר להתחיל בבדיקה של 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

אפשר ליצור את הרשימה המלאה של קריאות החזרה (callbacks) שזמינות דרך SL4A. בספריית המקור של SL4A, ‏ platform/external/sl4a/, מריצים את הפקודה הבאה:

python Docs/generate_api_reference_md.py

בתיקיית Docs יופיע קובץ ApiReference.md שמכיל את פונקציות ה-RPC הזמינות ב-SL4A, וכן מסמכי עזרה לגבי פונקציות ה-RPC.