שימוש באיחוד שירותי הסחר עם שכבת סקריפטים ל-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.

מסמכי תיעוד של SL4A API

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

python Docs/generate_api_reference_md.py

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