اعتبارًا من Android 13، تتضمّن أدوات اختبار التفاعل بين الأجهزة والكاميرا (ITS) إمكانية اختبار الأجهزة القابلة للطي. تحتوي الأجهزة القابلة للطي على كاميرات تكون متاحة أو غير متاحة حسب ما إذا كان الجهاز مطويًا أو مفتوحًا.
وتتغيّر معرّفات الكاميرات حسب نوع الجهاز وطرازه وعلامته التجارية، ويتغير مدى توفُّر الكاميرات الأمامية الفعلية حسب الحالة. ولهذا السبب، تحدد تقنية ITS للكاميرا ديناميكيًا تركيبات المشهد والكاميرا التي يجب استخدامها للاختبار. بما أنّه يجب اختبار الكاميرات في كل من حالتَي الطي وعدم الطي، يتطلّب اختبار الأجهزة القابلة للطي إعادة تركيب جهاز الاختبار أثناء عملية الاختبار.
اختبار الكاميرا الأمامية والخلفية
تختلف أدوات الاستشعار في الكاميرا المتوفّرة على الجهاز القابل للطي حسب ما إذا كان الجهاز مطويًا أو غير مطوي. في الأجهزة القابلة للطي، يختلف مدى توفّر الكامير أمامي حسب الحالة. على سبيل المثال، لا تتوفّر الكامير ا الأمامية في حالة الجهاز المغلق. بسبب هذا التغيير في مدى توفّر الكاميرات الأمامية، يجب اختبار الكاميرات الأمامية في كل من الوضعين "مطوي" و"غير مطوي". يفترض اختبار ITS للكاميرا أنّ مدى توفّر الكاميرا الخلفية يظلّ هو نفسه سواء كان الجهاز مطويًا أو مفتوحًا، لذا لا يلزم سوى اختبار الكاميرات الخلفية مرة واحدة.
استنادًا إلى حالة الجهاز، تصفّح تقنية ITS في الكاميرا أجهزة الكاميرات غير المتاحة، ولا تظهر أجهزة الكاميرات في قائمة مجموعات الكاميرات والمشاهد.
يوضح الجدول التالي سلوك اختبار تكنولوجيا المعلومات في الكاميرا لكل اتجاه.
اتجاه الكاميرا | سلوك اختبار تقنية ITS للكاميرا |
---|---|
الكاميرا الخلفية | اختبار الكاميرا مرة واحدة في كل من الوضعين "مطوي" أو "غير مطوي" |
الكاميرا الأمامية الأساسية | يتم اختبار الكاميرا مرة واحدة في الوضع المُطوي ومرة واحدة في الوضع المفتوح. |
الكاميرا الأمامية | لا يتم اختبار الكاميرا إلا في الولايات التي تتوفّر فيها الكاميرا. |
إجراءات الاختبار
يصف هذا القسم خطوات اختبار الكاميرات للأجهزة القابلة للطي.
إعداد الجهاز
للحصول على معلومات عن الإعداد، يُرجى الاطّلاع على مقالة الإعداد.
منح إذن الوصول إلى واجهة برمجة التطبيقات التجريبية
لكي تحدّد تكنولوجيا المعلومات في الكاميرا ما إذا كان الجهاز قابلاً للطي أم لا، يجب منح إمكانية الوصول إلى واجهة برمجة التطبيقات التجريبية قبل تنفيذ الاختبارات. في حال عدم منح الإذن بالوصول، يؤدي تنفيذ اختبارات ITS للكاميرا إلى تعطُّل التطبيق.
لمنح الإذن بالوصول، شغِّل أمر ADB التالي. يجب تنفيذ هذا الأمر مرة واحدة لجهاز واحد. في حال إعادة تثبيت أداة CTS Verifier باستخدام إصدار مختلف، يجب تنفيذ الأمر مرة أخرى.
adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
ملف الإعداد
لتحديد أنّ الجهاز قابل للطي، أضِف المَعلمة foldable_device
في كل من tablet
وsensor_fusion
في ملف config.yml
. يستخدم نظام ITS للكاميرا هذه المَعلمة لتحديد مجموعات camera_id
و
المشهد للحالات المُطوية والمُرفوعة.
في ما يلي مثال على ملف config.yml
لجهاز قابل للطي.
TestBeds:
- Name: TABLET_SCENES
# Test configuration for scenes[0:4, 6]
Controllers:
AndroidDevice:
- serial: 8A9X0NS5Z
label: dut
- serial: 5B16001229
label: tablet
TestParams:
brightness: 192
chart_distance: 22.0
debug_mode: "False" # "quotes" needed
chart_loc_arg: ""
camera: 0
scene: scene2_a
lighting_cntl: arduino # can be "arduino" or "None"
lighting_ch: 1
foldable_device: "True" # "False" for non-foldable DUTs
إجراء الاختبارات
لإجراء اختبارات تكنولوجيا المعلومات على جهاز قابل للطي، عليك تشغيل الأمر run_all_tests.py
.
لمعرفة التفاصيل، يُرجى الاطّلاع على مقالة استدعاء الاختبارات.
عند تشغيل اختبارات أمان الكاميرا على جهاز قابل للطي، يتم اختبار الكاميرا الأمامية الأساسية
في كلتا الحالتَين، أي عندما يكون الجهاز مطويًا ومسطّحًا. في حال طيّ الجهاز، يتم عرض النتائج
ضمن الخيار camera1_SCENE_NAME_folded
في تطبيق CTS Verifier. استنادًا إلى حالة الجهاز، لا تتوفّر بعض معرّفات كاميرا أمامية
ماديّة ولا يتم اختبارها.
يجب اختبار الكاميرا الخلفية في حالة واحدة فقط، ويفضَّل أن تكون حالتها عند طيّها، وألا تتضمّن نتائج الكاميرا الخلفية اللاحقة _folded
.
لضمان تنفيذ المشاهد المُعدّة للأجهزة القابلة للطي عندما يكون الجهاز مطويًا والتحقّق من حالة جهاز DUT القابل للطي، شغِّل الأمر التالي.
adb shell cmd device_state state
عند تنفيذ الاختبارات في حالة الطي، تعرض وحدة تكنولوجيا المعلومات في الكاميرا رسالة في الوحدة الطرفية تطلب من المستخدم إعداد الجهاز بشكل صحيح في صندوق تقنية المعلومات. لمواصلة تنفيذ الاختبار بعد ظهور الطلب، اضغط على مفتاح Enter.
في حال تشغيل جميع المشاهد في كل من الوضعين "مطوي" و"غير مطوي"، يتم تنفيذ المشاهد المُطوية أولاً، ثم المشاهد غير المطوية. ويؤدي ذلك إلى تقليل عدد عمليات إعادة التثبيت المطلوبة أثناء الاختبار.
تضيف تكنولوجيا المعلومات في الكاميرا أيضًا اللاحقة folded
إلى دليل tmp
الذي تم إنشاؤه لمشاهد الحالة المطوية.
نماذج الطلبات
في ما يلي أمثلة على أوامر تنفيذ الاختبار على الأجهزة القابلة للطي.
الأمر | الوصف |
---|---|
python tools/run_all_tests.py |
تشغيل كل المشاهد |
python tools/run_all_tests.py scenes=scene0 |
يتم تشغيل المشهد 0. إذا كان الجهاز مطويًا وكان المستخدم يختبر
الكاميرا الأمامية الأساسية، يحدِّد النص البرمجي حالة الجهاز ويُعدِّل اللاحقة _folded إلى اسم المشهد. ولا يحتاج المستخدمون إلى إضافة اللاحقة لتشغيل المشاهد المجمّعة. |
python tests/scene0/ |
يُجري اختبارًا معيّنًا. |