כלי אימות הרחבות למצלמה

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

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

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

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

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

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

  1. הורד את קוד המקור של ספריית Android Jetpack. לפרטים, עיין בסעיף בדיקת הקוד של Android Jetpack README .

  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. בנה את ה- 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 APKs.

  • 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
    

הפעל את כל הבדיקות האוטומטיות

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

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 +/- פועלים כצפוי בתצוגה המקדימה.

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

כדי לצלם את התמונה, הקש על כפתור CAPTURE (הכפתור העגול) בפעילות לכידת התמונה. פעולה זו משיקה פעילות אימות תמונה המציגה את התמונה שנלכדה.

photo_viewer-bokeh_enabled

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

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

  • צביטה פנימה/חוצה כדי לשנות את קנה המידה של התמונה
  • החלק שמאלה/ימינה כדי להחליף את התמונות שצולמו
  • לְשַׁחְזֵר
  • שמור פריט בתפריט תמונה

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

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

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

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

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

camera_validation_resultextension_mode_validation_result

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

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

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

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

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