הטמעה של מצב 'מסגרת בדיקה'

מצב 'מסגרת בדיקה' הוא תכונה שנוספה ב-Android 10 עבור של מפתחי אפליקציות צד שלישי שרוצים כדי לבצע אוטומציה של מכשיר או של צי מכשירים. התכונה מספקת שיטה למחיקת הכול נתוני משתמש במכשיר Android, שמירת מפתחות ADB ודילוג על כל מסכי ההגדרה הראשונה. הפעולה הזאת מאפשרת להריץ בדיקה של ממשק המשתמש מיד לאחר ההפעלה, ללא אינטראקציה ידנית.

התאמה אישית

כדי לדעת אם המכשיר נמצא במצב 'מסגרת בדיקה', אפשר לבדוק ActivityManager.isRunningInUserTestHarness() לצמצם למינימום את כמות ההתאמות האישיות; הגבלה לפעולות כמו דילוג על מסכי הגדרה (במקלדת או באשף ההגדרה) שיגרמו לשיבושים בדיקות ממשק המשתמש או דרישה לאינטראקציה ידנית.

הטמעה

הטמעת ברירת המחדל של PersistentDataBlockManagerInternal נמצא ב-PersistentDataBlockService. מצב 'מסגרת בדיקה' מוטמע ב-TestHarnessModeService.

הטמעת ברירת המחדל של מצב 'מסגרת בדיקה' משתמשת באותו מנגנון אחסון כמו הגנה מפני איפוס להגדרות המקוריות, לאחסון מפתחות adb באופן זמני במחיצה קבועה. אם מחיצה קבועה עם הגנה מפני איפוס להגדרות המקוריות כבר מוטמעת במכשיר הבדיקה, נדרשת מעט עבודה, אם בכלל, כדי לתמוך בתכונה הזו.

יצרני ציוד מקורי (OEM) שלא מגדירים מחיצות באופן קבוע צריכים להטמיע PersistentDataBlockManagerInternal לפני הריצה TestHarnessModeService.

בדיקת הסטטוס של מצב 'מסגרת בדיקה'

כשמצב 'מסגרת בדיקה' מופעל, הפונקציה ActivityManager.isRunningInUserTestHarness() מחזירה true.

הפעלת מצב 'מסגרת בדיקה'

הפעלת מצב 'מסגרת בדיקה' מוחקת את כל הנתונים מהמכשיר ומגדירה אותו עבור בדיקה. כלומר, כל חלקי המכשיר שעלולים להפריע לבדיקה (כמו חשבונות שמסתנכרנים אוטומטית, אימות חבילות ועדכונים אוטומטיים) מושבתים כברירת מחדל אבל המשתמש יכול להפעיל אותן מחדש.

מריצים את הפקודה adb כדי להפעיל את מצב 'מסגרת בדיקה':

adb shell cmd testharness enable