أداة التحقّق من إضافات الكاميرا

تتيح أداة التحقّق من الإضافات الخاصة بالكاميرا لصنّاع الأجهزة verifying التحقّق من تنفيذ مكتبة مورّدي الإضافات الخاصة بالكاميرا من المصنّعين الأصليين للأجهزة بشكل صحيح. تتضمّن الأداة اختبارات التحقّق المبرمَجة واليدوية.

  • اختبارات التحقّق المبرمَجة: تُستخدم هذه الاختبارات للتحقّق من تنفيذ واجهة مكتبة المورّد بشكلٍ صحيح. على سبيل المثال، إذا كان CaptureProcessor مطلوبًا لالتقاط الصور، تتحقّق الاختبارات من أنّ ImageCaptureExtenderImpl#getCaptureStages() يعرض المثيلات المطلوبة CaptureStage لالتقاط الصور.

  • اختبارات التحقّق اليدوية: يمكنك التحقّق من تأثيرات الصور وجودة الصور التي تمّت معاينتها والتقاطها. على سبيل المثال، تسمح الاختبارات لصنّاع الأجهزة بالتحقق يدويًا مما إذا كان يتم تطبيق تأثير إعادة لمس الوجه بشكل صحيح أو ما إذا كانت قوة تأثير التمويه كافية.

يُعدّ الرمز المصدر لأداة التحقّق جزءًا من تطبيق اختبار الإضافات في مستودع Android Jetpack.

إنشاء أداة التحقّق من الإضافات في الكاميرا

لإنشاء أداة التحقّق من صحة الإضافات، اتّبِع الخطوات التالية:

  1. نزِّل رمز مصدر مكتبة Android Jetpack. لمعرفة التفاصيل، يُرجى الاطّلاع على القسم الاطّلاع على الرمز البرمجي في ملف README الخاص بمجموعة Android Jetpack.

  2. أنشئ حزمة APK الخاصة بتطبيقك على النحو التالي: extensionstestapp يتيح ذلك إجراء اختبارات التحقّق اليدوية.

      cd path/to/checkout/frameworks/support/
      ./gradlew camera:integration-tests:camera-testapp-extensions:assembleDebug
    

    يتم إخراج حِزمة APK في المسار التالي:

      path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
    
  3. أنشئ حزمة APK الخاصة بتطبيقك على النحو التالي: androidTest يسمح حِزمة APK هذه بإجراء اختبارات التحقّق المبرمَجة.

      cd path/to/checkout/frameworks/support/
      ./gradlew camera:integration-tests:camera-testapp-extensions:assembleAndroidTest
    

    يتم إخراج حِزمة APK في المسار التالي:

      path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
    

إجراء اختبارات التحقّق من الصحة المبرمَجة

لتنفيذ اختبارات التحقّق المبرمَجة، ثبِّت حِزم APK الخاصة بتطبيقَي extensionstestapp و androidTest.

  • extensionstestapp حزمة APK

      adb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
    
  • androidTest حزمة APK

      adb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/androidTest/debug/camera-testapp-extensions-debug-androidTest.apk
    

تشغيل جميع الاختبارات المبرمَجة

بعد تثبيت حِزم APK، شغِّل الأمر التالي لإجراء جميع الاختبارات المبرمَجة للتحقّق من صحة تنفيذ مكتبة المورّد:

adb shell am instrument -w -r androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner

في حال اجتياز جميع الاختبارات، يتم عرض النتيجة حسنًا. بخلاف ذلك، يعرض تقرير الاختبار النهائي الأعطال في المحطة الطرفية بعد اكتمال جميع الاختبارات.

automated_validation_result-pass

الشكل 1: نتيجة جيدة للاختبارات المبرمَجة

automated_validation_result-fail

الشكل 2: ظهور أخطاء في الاختبارات المبرمَجة

إجراء اختبارات مبرمَجة لفئة معيّنة

لإجراء اختبارات مبرمَجة لفئة معيّنة، حدِّد اسم الفئة المستهدفة ومسارها. يعرض المثال التالي الأمر لتشغيل الاختبارات لفئة ImageCaptureTest:

adb shell am instrument -w -r -e class **androidx.camera.integration.extensions.ImageCaptureTest** androidx.camera.integration.extensions.test/androidx.test.runner.AndroidJUnitRunner

إجراء اختبارات التحقّق اليدوية

يمكن العثور على اختبارات التحقّق اليدوية في تطبيق اختبار الإضافات. بعد تثبيت تطبيق اختبار الإضافات وتشغيله، يمكنك التبديل إلى وضع أداة التحقّق من خلال النقر على عنصر القائمة في أعلى يسار الشاشة.

بعد التبديل إلى وضع أداة التحقّق، تعرض الصفحة الأولى جميع الكاميرات التي تتضمّن إمكانية استخدام REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE. إذا كانت الكاميرا لا تتيح أي وضع تمديد، يظهر عنصر الجدول المرتبط بها باللون الرمادي.

camera_validation_result-initial

الشكل 3: وضع أداة التحقّق

انقر على إحدى الكاميرات للاطّلاع على أوضاع التوسيع للاختبار. يتم عرض أوضاع الإضافة غير المتوافقة مع الكاميرا المحدّدة باللون الرمادي.

extension_mode_validation_result-initial

الشكل 4: أوضاع التوسيع المتاحة للكاميرا

التحقّق من نتائج المعاينة

للتحقّق من نتائج المعاينة، ابدأ اختبارًا يدويًا من خلال النقر على أحد أوضاع الإضاءة الإضافية للكاميرا المحدّدة. بعد ذلك، يتم عرض نشاط التقاط الصور الذي يحتوي على المعاينة.

preview-bokeh_enabled

الشكل 5: معاينة الصورة مع تفعيل تأثير "موهبة الصورة"

يتيح نشاط التقاط الصور الوظائف التالية:

  • تكبير/تصغير
  • النقر للتركيز
  • زر تبديل أوضاع الفلاش
  • EV +/-
  • زر التبديل بين تفعيل الإضافة أو إيقافها

تأكَّد من أنّ وظائف التصغير/التكبير والنقر للتركيز وأوضاع الفلاش و EV +/- تعمل على النحو المتوقّع في المعاينة.

التحقّق من نتائج الصور التي تم التقاطها

لالتقاط الصورة، انقر على الزر التقاط (الزرّ المستدير) في نشاط التقاط الصور. يؤدي ذلك إلى بدء نشاط التحقّق من الصورة الذي يعرض الصورة التي تم التقاطها.

photo_viewer-bokeh_enabled

الشكل 6: الصورة التي تم التقاطها مع تفعيل تأثير "موهبة"

يتضمّن نشاط التحقّق من الصورة الوظائف التالية:

  • حرِّك إصبعَيك معًا لتكبير الصورة أو تصغيرها.
  • مرِّر سريعًا إلى اليمين أو اليسار لتبديل الصور التي تم التقاطها.
  • إعادة الالتقاط
  • عنصر قائمة حفظ الصورة

تأكَّد ممّا إذا كانت الصورة التي تم التقاطها صحيحة وتتوافق مع إعدادات التكبير/التصغير والنقر للتركيز وأوضاع الفلاش وEV +/- التي تم ضبطها عند التقاط الصورة.

إذا كانت النتائج التي تم رصدها صحيحة، انقر على الزر PASS (علامة اختيار) في الزاوية السفلية اليمنى. بخلاف ذلك، انقر على الزر تعذُّر (علامة تعجب) في الزاوية اليسرى السفلية.

عرض نتائج الاختبار

بعد التحقّق من أنّ وضع التمديد ناجح أو تعذّر إكماله، يعرض عنصر القائمة الخاص بحال وضع التمديد لون خلفية ومؤشرًا مختلفَين. في عرض القائمة لجميع الكاميرات، يتم عرض العناصر بالألوان التالية:

  • خلفية بيضاء: تتيح الكاميرا وضع تمديد واحدًا على الأقل، ولم يتم التحقّق من أوضاع التمديد المتوافقة بالكامل.
  • الخلفية الخضراء: تتيح الكاميرا وضع تمديد واحدًا على الأقل. يتم التحقّق من صحة جميع أوضاع الإضافات المتوافقة مع اجتياز جميع النتائج.
  • الخلفية الحمراء: تتوافق الكاميرا مع وضع تمديد واحد على الأقل. يتم التحقّق من صحة جميع أوضاع الإضافات المتوافقة مع تعذّر نتيجة واحدة على الأقل من أوضاع الإضافات.
  • خلفية رمادية: هذه الميزة غير متاحة.

camera_validation_result extension_mode_validation_result

الشكل 7: الألوان التي تشير إلى نتائج اختبار الكاميرات وأوضاع الإضافات

وظائف أداة التحقّق الأخرى

بعد اكتمال جميع الاختبارات، يقدّم نشاط قائمة الكاميرات الوظائف التالية:

  • تصدير نتائج الاختبار: يؤدي هذا الخيار إلى تصدير نتائج الاختبار كملف CSV إلى مجلد Documents/ExtensionsValidation.
  • إعادة الضبط: يؤدي هذا الخيار إلى محو جميع نتائج الاختبار المخزّنة مؤقتًا.
  • تطبيق نماذج الإضافات: للتبديل إلى وضع تطبيق نماذج الإضافات

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