اختبار الكاميرا القابلة للطي لأنظمة النقل الذكية (ITS)

بدءًا من Android 13، يتضمن Camera ITS دعمًا للاختبار للأجهزة القابلة للطي. تحتوي الأجهزة القابلة للطي على كاميرات متاحة أو غير متوفرة اعتمادًا على ما إذا كان الجهاز في حالة مطوية أو غير مطوية.

تتغير معرفات الكاميرا وفقًا لنوع الجهاز وطرازه وعلامته التجارية؛ ويتغير توفر الكاميرات الأمامية الفعلية حسب الحالة. ولهذا السبب، يقوم نظام Camera ITS بتحديد المشهد ومجموعات الكاميرا بشكل ديناميكي لاستخدامها في الاختبار. نظرًا لأنه يجب اختبار الكاميرات في كل من الحالتين المطوية وغير المطوية، فإن اختبار الكاميرات القابلة للطي يتطلب إعادة تركيب DUT أثناء عملية الاختبار.

اختبار الكاميرا الأمامية والخلفية

تختلف مستشعرات الكاميرا المتوفرة على الجهاز القابل للطي اعتمادًا على ما إذا كان الجهاز في حالة مطوية أو غير مطوية. بالنسبة للأجهزة القابلة للطي، يتغير توفر الكاميرا الأمامية حسب الحالة. على سبيل المثال، الكاميرا الأمامية غير متوفرة في الحالة المطوية. وبسبب هذا التغيير في توفر الكاميرا الأمامية، يجب اختبار الكاميرات الأمامية في كل من الحالتين المطوية وغير المطوية. يفترض نظام تحليل الكاميرا الذكي أن توفر الكاميرا الخلفية يظل كما هو سواء كان الجهاز مطويًا أو مفتوحًا، لذلك لا يلزم اختبار الكاميرات الخلفية إلا مرة واحدة.

اعتمادًا على حالة الجهاز، يقوم نظام Camera 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 . يستخدم Camera 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

إبدأ الاختبارات

لتشغيل اختبارات ITS على جهاز قابل للطي، قم بتشغيل الأمر run_all_tests.py . لمزيد من التفاصيل، راجع استدعاء الاختبارات .

عند تشغيل Camera ITS على جهاز قابل للطي، يتم اختبار الكاميرا الأمامية الأساسية في كلتا الحالتين، مطوية ومفتوحة. إذا كان الجهاز مطويًا، فسيتم عرض النتائج أسفل خيار camera1_ SCENE_NAME _folded في تطبيق CTS Verifier. اعتمادًا على حالة الجهاز، لا تتوفر بعض معرفات الكاميرا الفعلية الأمامية ولا يتم اختبارها. الكاميرا الخلفية تحتاج فقط إلى الاختبار في حالة واحدة، ويفضل أن تكون الحالة المطوية، ولا تحتوي نتائج الكاميرا الخلفية على اللاحقة _folded .

للتأكد من تنفيذ المشاهد المطوية والجهاز مطوي والتحقق من حالة DUT القابلة للطي، قم بتشغيل الأمر التالي.

adb shell cmd device_state state

عند تنفيذ الاختبارات في حالة مطوية، تعرض كاميرا ITS رسالة في الجهاز لمطالبة المستخدم بإعداد الجهاز بشكل صحيح على صندوق ITS. لمواصلة تنفيذ الاختبار بعد المطالبة، اضغط على Enter .

إذا كنت تقوم بتشغيل كافة المشاهد في كل من الحالتين المطوية وغير المطوية، فسيتم تنفيذ المشاهد المطوية أولاً، تليها المشاهد غير المطوية. وهذا يقلل من مقدار إعادة التركيب المطلوبة أثناء الاختبار.

يضيف Camera ITS أيضًا اللاحقة folded إلى دليل tmp الذي تم إنشاؤه لمشاهد الحالة المطوية.

أوامر عينة

فيما يلي نماذج لأوامر لتنفيذ الاختبار على الأجهزة القابلة للطي.

يأمر وصف
python tools/run_all_tests.py تشغيل جميع المشاهد.
python tools/run_all_tests.py scenes=scene0 تشغيل المشهد0. إذا كان الجهاز مطويًا وكان المستخدم يختبر الكاميرا الأمامية الأساسية، فسيحدد البرنامج النصي حالة الجهاز ويضيف اللاحقة _folded إلى اسم المشهد. لا يتعين على المستخدمين إضافة اللاحقة لتشغيل المشاهد المطوية.
python tests/scene0/ -c config.yml python tests/scene0/ -c config.yml يقوم باختبار محدد.