"وضع اختبار الأجهزة" هو ميزة تمت إضافتها في Android 10 لسماح لمطوّري التطبيقات التابعين لجهات خارجية بالبرمجة المبرمَجة لجهاز أو مجموعة من الأجهزة. توفّر الميزة طريقة لمحو جميع بيانات المستخدمين على جهاز Android، والاحتفاظ بمفاتيح ADB، وتخطّي جميع شاشات الإعداد لأول مرة. يتيح ذلك للمستخدم إجراء اختبار واجهة المستخدم مباشرةً بعد بدء التشغيل بدون أي تفاعل يدوي.
التخصيص
يمكنك تحديد ما إذا كان الجهاز في وضع "مفعِّل الاختبار" من خلال التحقّق من
ActivityManager.isRunningInUserTestHarness()
. يجب الحدّ من عمليات التخصيص إلى الحدّ الأدنى، وعدم السماح إلا بإجراء إجراءات مثل تخطّي شاشات الإعداد (على لوحة المفاتيح أو معالج الإعداد) التي قد تؤدي إلى إيقاف اختبارات واجهة المستخدم أو تتطلّب تفاعلًا يدويًا.
التنفيذ
يمكن تنفيذ PersistentDataBlockManagerInternal
تلقائيًا في PersistentDataBlockService
.
يتم تنفيذ وضع "مفعّل الاختبار" في TestHarnessModeService
.
يستخدم التنفيذ التلقائي لوضع "مفعِّل الاختبار" آلية التخزين نفسها التي تستخدمها ميزة الحماية من إعادة الضبط على الإعدادات الأصلية لتخزين مفاتيح adb مؤقتًا في قسم دائم. إذا سبق أن تم تنفيذ خطوة برمجة لإنشاء ملف شخصي دائم يتضمّن ميزة "توفير الحماية بعد إعادة الضبط على الإعدادات الأصلية" على الجهاز التجريبي، لن تحتاج إلى بذل جهد كبير أو أي جهد على الإطلاق لتفعيل هذه الميزة.
على المصنّعين الأصليّين للأجهزة الذين لم يسبق لهم إعداد قسم دائم تنفيذ
PersistentDataBlockManagerInternal
قبل تشغيل
TestHarnessModeService
.
التحقّق من حالة وضع "مفعّل الاختبار"
عند تفعيل وضع "مفعِّل الاختبار"، يعرض الرمز ActivityManager.isRunningInUserTestHarness()
الرمز true
.
تشغيل وضع "مفعِّل الاختبار"
يؤدي تفعيل وضع "مفعّل الاختبار" إلى محو جميع البيانات من الجهاز وإعداده للقيام بالاختبار. وهذا يعني أنّ جميع أجزاء الجهاز التي يمكن أن تتداخل مع الاختبار (مثل حسابات المزامنة التلقائية والتحقّق من الحِزم والتحديثات التلقائية) تكون متوقفة تلقائيًا، ولكن يمكن للمستخدم إعادة تفعيلها.
يمكنك تنفيذ الأمر adb
لتفعيل وضع "مفعِّل الاختبار":
adb shell cmd testharness enable