כלי האימות של התוספים למצלמה מאפשר ליצרני המכשירים לוודא שספריית הספק של התוספים למצלמה של יצרן ציוד מקורי מוטמעת בצורה נכונה. הכלי כולל בדיקות אימות אוטומטיות וידניות.
בדיקות אימות אוטומטיות: בדיקה שהממשק של ספריית הספק הוטמע בצורה נכונה. לדוגמה, אם צריך לציין
CaptureProcessor
לצילום תמונה, הבדיקות מאמתות ש-ImageCaptureExtenderImpl#getCaptureStages()
יחזיר אתCaptureStage
המופעים הנדרשים לצילום התמונות.בדיקות אימות ידניות: אימות האפקטים והאיכות של התמונות בתצוגה המקדימה ושל התמונות שצולמו. לדוגמה, הבדיקות מאפשרות ליצרני המכשירים לאמת באופן ידני אם אפקט עיבוד הפנים מוחל בצורה נכונה או אם עוצמת הבוקה מספיקה.
קוד המקור של כלי האימות הוא חלק מאפליקציית הבדיקה של התוספים במאגר Android Jetpack.
איך ליצור כלי לאימות תוספים למצלמה
כדי ליצור את הכלי לאימות התוספים:
מורידים את קוד המקור של ספריית Android Jetpack. פרטים נוספים זמינים בקטע בדיקת הקוד שבקובץ ה-README של Android Jetpack.
יוצרים את קובץ ה-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
יוצרים את ה-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
APKadb install -r path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
androidTest
APKadb 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
אם כל הבדיקות מסתיימות בהצלחה, מוחזרת תוצאת תקין. אחרת, בדוח הבדיקה הסופי יופיעו כשלים בטרמינל אחרי שכל הבדיקות הושלמו.
איור 1. תוצאה תקינה של בדיקות אוטומטיות
איור 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
. אם המצלמה לא תומכת במצב תוסף כלשהו, הפריט המתאים ברשימה מופיע באפור.
איור 3. מצב הכלי לאימות
מקישים על אחת מהמצלמות כדי לראות את מצבי ההרחבה לבדיקה. מצבי התוספים שלא נתמכים על ידי המצלמה שנבחרה מוצגים באפור.
איור 4. מצבי התוספים שזמינים למצלמה
אימות התוצאות בתצוגה המקדימה
כדי לאמת את תוצאות התצוגה המקדימה, מתחילים בדיקה ידנית על ידי הקשה על מצב התוסף של המצלמה שנבחרה. לאחר מכן תוצג פעילות של צילום תמונה שמכילה את התצוגה המקדימה.
איור 5. תצוגה מקדימה של תמונה עם אפקט בוקה מופעל
הפעילות 'צילום תמונה' תומכת בפונקציות הבאות:
- התקרבות/התרחקות
- הקשה כדי להתמקד
- לחצן להחלפת מצב הפלאש
- EV +/-
- לחצן החלפת מצב של תוסף מופעל/מושבת
מוודאים שהפונקציות של הגדלת התצוגה/הקטנת התצוגה, הקשה להתמקד, מצבי הפלאש והפונקציות של EV +/- פועלות כצפוי בתצוגה המקדימה.
אימות התוצאות של התמונות שצולמו
כדי לצלם את התמונה, מקישים על הלחצן צילום (הלחצן העגול) בפעילות הצילום. הפעולה הזו תפעיל פעילות של אימות תמונה שבה תוצג התמונה שצילמתם.
איור 6. תמונה שצולמה עם אפקט בוקה מופעל
הפעילות של אימות התמונה כוללת את הפונקציות הבאות:
- תנועת צביטה פנימה או החוצה כדי לשנות את גודל התמונה
- מחליקים שמאלה או ימינה כדי לעבור בין התמונות שצולמו.
- צילום מחדש
- שמירת התמונה בתפריט
מוודאים שהתמונה שצולמה נכונה ותואמת להגדרות של הזום, הקשה להתמקד, מצבי הפלאש וה-EV +/- שהוגדרו בזמן הצילום.
אם התוצאות שצולמו נכונות, מקישים על הלחצן PASS (סימן וי) בפינה השמאלית התחתונה. אם לא, מקישים על הלחצן FAIL (סימן קריאה) בפינה השמאלית התחתונה.
הצגת תוצאות הבדיקה
אחרי שתאומת הצלחה או כשל של מצב תוסף, צבע הרקע והסמל של פריט הרשימה של מצב התוסף ישתנו. בתצוגת הרשימה של כל המצלמות, הפריטים מוצגים בצבעים הבאים:
- רקע לבן: המצלמה תומכת לפחות במצב הרחבה אחד, ומוודאים שהמצב הנתמך של ההרחבה תקין.
- רקע ירוק: המצלמה תומכת לפחות במצב הרחבה אחד. כל מצבי התוספים הנתמכים מאומתים, וכל התוצאות עוברות.
- רקע אדום: המצלמה תומכת במצב תוסף אחד לפחות. כל מודלי התוספים הנתמכים עוברים אימות, כאשר לפחות תוצאה אחת של מודל תוסף נכשלת.
- רקע אפור: התכונה הזו לא זמינה.
איור 7. צבעים המציינים תוצאות בדיקה של מצלמות ומצבי תוספים
פונקציות אחרות של כלי האימות
אחרי שכל הבדיקות יושלמו, הפעילות של רשימת המצלמות תספק את הפונקציות הבאות:
- ייצוא תוצאות הבדיקה: ייצוא תוצאות הבדיקה כקובץ CSV לתיקייה
Documents/ExtensionsValidation
. - איפוס: ניקוי כל תוצאות הבדיקה שנשמרו במטמון.
- אפליקציית תוספים לדוגמה: מעבר למצב של אפליקציית תוספים לדוגמה.
אחרי שתשלימו את הבדיקה, תוכלו לייצא את תוצאות הבדיקה. אם נתקלתם בבעיה וצריך לאמת מחדש גרסה חדשה של הטמעת ספריית הספק עם הפתרונות, צריך לאפס את תוצאות הבדיקה הקודמות ולהריץ מחדש את כל מצבי התוספים הנתמכים בכל המצלמות כדי לוודא שהבעיות תוקנו.