כלי לאימות תוספים למצלמה

הכלי לאימות תוספי מצלמה מאפשר ליצרני המכשירים: לוודא ש- ספריית הספקים של ה-OEM (יצרן הציוד המקורי) לתוספים למצלמה מוטמע בצורה נכונה. הכלי כולל אימות אוטומטי וידני בדיקות.

  • בדיקות אימות אוטומטיות: מאמתים שספריית הספקים הוטמע בצורה נכונה. לדוגמה, אם CaptureProcessor הוא שנדרשת לצילום תמונה, הבדיקות מאמתות הפונקציה ImageCaptureExtenderImpl#getCaptureStages() מחזירה את הערך הנדרש CaptureStage מופעים לצילום התמונות.

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

קוד המקור של כלי האימות הוא חלק אפליקציה לבדיקת תוספים ב מאגר Jetpack ב-Android.

איך ליצור כלי לאימות תוספים למצלמה

כדי ליצור את הכלי לאימות תוספים, מבצעים את השלבים הבאים:

  1. מורידים את קוד המקור של ספריית Jetpack ב-Android. פרטים נוספים זמינים במאמר בדיקת הקוד בקטע של קובץ README של Android Jetpack.

  2. לבנות את extensionstestapp APK כך אפשר להריץ בדיקות אימות ידניות.

      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. לבנות את androidTest APK ה-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
    

הרצה של בדיקות אימות אוטומטיות

כדי להריץ את בדיקות האימות האוטומטיות, צריך להתקין את extensionstestapp androidTest חבילות APK.

  • APK של extensionstestapp

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

      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

אם כל הבדיקות מסתיימות בהצלחה, מוחזרת תוצאת תקין. אחרת, דוח הבדיקה הסופי מציגה כשלים במסוף לאחר שכל הבדיקות הושלמו.

auto_authentication_result-pass

איור 1. תוצאה תקינה לבדיקות אוטומטיות

auto_authentication_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_verifyation_result-initial

איור 3. מצב כלי האימות

אפשר להקיש על אחת מהמצלמות כדי לראות את מצבי התוסף לבדיקה. התוסף מצבים שלא נתמכים על ידי המצלמה שנבחרה מוצגים באפור.

extensions_mode_verifyation_result-initial

איור 4. מצבי תוספים זמינים למצלמה

בדיקת התוצאות של התצוגה המקדימה

כדי לאמת את תוצאות התצוגה המקדימה, מתחילים בדיקה ידנית על ידי הקשה על מצב תוסף עבור המצלמה שנבחרה. פעילות של צילום תמונה שכוללת והתצוגה המקדימה תוצג.

Preview-bokeh_enabled

איור 5. תצוגה מקדימה של התמונה עם האפקט בוקה מופעל

בפעילות צילום התמונות יש תמיכה בפונקציות הבאות:

  • התקרבות/התרחקות
  • הקשה למיקוד
  • לחצן להחלפת מצב הפלאש
  • רכב חשמלי +/-
  • לחצן מתג להפעלה/השבתה של תוסף

מוודאים שההגדלה או הקטנה של התצוגה, ההקשה למיקוד, מצבי הפלאש הפונקציות של הרכב החשמלי (EV) +/- פועלות כצפוי בתצוגה המקדימה.

אימות התוצאות של התמונות שצולמו

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

Photo_viewer-bokeh_enabled

איור 6. תמונה שצולמה עם הפעלת אפקט בוקה

הפעילות של אימות התמונות כוללת את הפונקציות הבאות:

  • תנועת צביטה פנימה או החוצה כדי לשנות את גודל התמונה
  • מחליקים שמאלה/ימינה כדי להחליף את התמונות שצולמו
  • לכידה
  • אפשרות לשמור תמונה בתפריט

בדיקה אם התמונה שצולמה נכונה ותואמת למרחק התצוגה In/out, התכונה 'הקשה למיקוד', 'מצבי הפלאש' והגדרות של '+/-EV' שהוגדרו לצילום התמונה.

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

הצגת תוצאות הבדיקה

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

  • רקע לבן: המצלמה תומכת במצב תוסף אחד לפחות וגם מצבי התוספים הנתמכים לא מאומתים לחלוטין.
  • רקע ירוק: המצלמה תומכת במצב תוסף אחד לפחות. הכול מצבי תוספים נתמכים מאומתים כאשר כל התוצאות עוברות.
  • רקע אדום: המצלמה תומכת במצב תוסף אחד לפחות. הכול מצבי תוספים נתמכים מאומתים באמצעות מצב תוסף אחד לפחות נכשלת.
  • רקע אפור: התכונה הזו לא זמינה.

מצלמה_אימות_תוצאה תוסף_מצב_אימות_תוצאה

איור 7. צבעים המציינים תוצאות בדיקה של מצלמות ומצבי תוספים

פונקציות נוספות של כלי האימות

אחרי שכל הבדיקות יסתיימו, הפעילות של רשימת המצלמות תספק את הפונקציות הבאות:

  • ייצוא תוצאות הבדיקה: המערכת מייצאת את תוצאות הבדיקה כקובץ CSV אל תיקייה אחת (Documents/ExtensionsValidation).
  • איפוס: ניקוי כל תוצאות הבדיקה שנשמרו במטמון.
  • אפליקציה לדוגמה של תוספים: מעבר לאפליקציה לדוגמה של התוספים במצב תצוגה.

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