เครื่องมือตรวจสอบส่วนขยายของกล้อง

เครื่องมือตรวจสอบส่วนขยายของกล้องช่วยให้ผู้ผลิตอุปกรณ์สามารถตรวจสอบได้ว่า ไลบรารีผู้จำหน่าย OEM ของส่วนขยายของกล้อง ได้รับการติดตั้งอย่างถูกต้อง เครื่องมือนี้รวมถึงการทดสอบการตรวจสอบความถูกต้องแบบอัตโนมัติและแบบแมนนวล

  • การทดสอบการตรวจสอบอัตโนมัติ: ตรวจสอบว่ามีการใช้อินเทอร์เฟซไลบรารีของผู้ขายอย่างถูกต้อง ตัวอย่างเช่น หากจำเป็นต้องใช้ CaptureProcessor ในการจับภาพ การทดสอบจะตรวจสอบว่า ImageCaptureExtenderImpl#getCaptureStages() ส่งคืนอินสแตนซ์ CaptureStage ที่จำเป็นสำหรับการจับภาพ

  • การทดสอบการตรวจสอบด้วยตนเอง: ตรวจสอบเอฟเฟ็กต์ภาพและคุณภาพของภาพตัวอย่างและภาพที่ถ่าย ตัวอย่างเช่น การทดสอบช่วยให้ผู้ผลิตอุปกรณ์ตรวจสอบด้วยตนเองว่ามีการใช้เอฟเฟกต์รีทัชใบหน้าอย่างถูกต้องหรือไม่ หรือความเข้มของโบเก้เพียงพอหรือไม่

ซอร์สโค้ดของเครื่องมือตรวจสอบเป็นส่วนหนึ่งของ แอปทดสอบส่วนขยาย ใน พื้นที่เก็บข้อมูล Android Jetpack

สร้างเครื่องมือตรวจสอบส่วนขยายกล้อง

เมื่อต้องการสร้างเครื่องมือตรวจสอบส่วนขยาย ให้ทำตามขั้นตอนเหล่านี้:

  1. ดาวน์โหลดซอร์สโค้ดไลบรารี Android Jetpack สำหรับรายละเอียด โปรดดูส่วน การตรวจสอบรหัส ของ Android Jetpack README

  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

  • 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
    
  • 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

หากการทดสอบทั้งหมดผ่าน ผลลัพธ์ OK จะถูกส่งกลับ มิฉะนั้น รายงานการทดสอบขั้นสุดท้ายจะแสดงความล้มเหลวในหน้าจอหลังจากการทดสอบทั้งหมดเสร็จสิ้น

automatic_validation_result-pass

รูปที่ 1 ผลการทดสอบอัตโนมัติตกลง

automatic_validation_result-ล้มเหลว

รูปที่ 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 โหมดขยายสำหรับกล้อง

ตรวจสอบผลลัพธ์การแสดงตัวอย่าง

หากต้องการตรวจสอบผลลัพธ์การแสดงตัวอย่าง ให้เริ่มการทดสอบด้วยตนเองโดยแตะโหมดส่วนขยายสำหรับกล้องที่เลือก จากนั้นกิจกรรมการจับภาพที่มีภาพตัวอย่างจะปรากฏขึ้น

ดูตัวอย่าง-bokeh_enabled

รูปที่ 5 ดูตัวอย่างภาพที่เปิดใช้งานโบเก้

กิจกรรมการถ่ายภาพรองรับฟังก์ชันต่อไปนี้:

  • ซูมเข้า/ออก
  • แตะเพื่อโฟกัส
  • ปุ่มสลับโหมดแฟลช
  • อีวี +/-
  • ปุ่มสวิตช์เปิด/ปิดส่วนขยาย

ตรวจสอบว่าการซูมเข้า/ออก แตะเพื่อโฟกัส โหมดแฟลช และฟังก์ชัน EV +/- ทำงานตามที่คาดไว้ในการแสดงตัวอย่าง

ตรวจสอบผลลัพธ์ภาพที่ถ่ายได้

หากต้องการถ่ายภาพ ให้แตะปุ่ม CAPTURE (ปุ่มกลม) ในกิจกรรมการถ่ายภาพ ซึ่งจะเป็นการเปิดกิจกรรมการตรวจสอบความถูกต้องของรูปภาพซึ่งแสดงภาพที่ถ่าย

photo_viewer-bokeh_enabled

รูปที่ 6 ภาพที่ถ่ายโดยเปิดใช้โบเก้

กิจกรรมการตรวจสอบความถูกต้องของภาพประกอบด้วยฟังก์ชันต่อไปนี้:

  • บีบนิ้วเข้า/ออกเพื่อปรับขนาดภาพ
  • เลื่อนไปทางซ้าย/ขวาเพื่อสลับภาพที่ถ่าย
  • เรียกคืน
  • บันทึกรายการเมนูรูปภาพ

ตรวจสอบว่าภาพที่ถ่ายนั้นถูกต้องและตรงกับการซูมเข้า/ออก การแตะเพื่อโฟกัส โหมดแฟลช และการตั้งค่า EV +/- ที่ตั้งไว้เมื่อถ่ายภาพ

หากผลลัพธ์ที่บันทึกได้ถูกต้อง ให้แตะปุ่ม PASS (เครื่องหมายถูก) ที่มุมขวาล่าง หรือแตะปุ่ม FAIL (เครื่องหมายอัศเจรีย์) ที่มุมซ้ายล่าง

ดูผลการทดสอบ

หลังจากที่โหมดส่วนขยายได้รับการยืนยันว่าผ่านหรือไม่ผ่าน รายการสำหรับโหมดส่วนขยายจะแสดงสีพื้นหลังและตัวบ่งชี้ที่แตกต่างกัน ในมุมมองรายการของกล้องทั้งหมด รายการต่างๆ จะแสดงเป็นสีต่อไปนี้:

  • พื้นหลังสีขาว: กล้องรองรับโหมดส่วนขยายอย่างน้อยหนึ่งโหมด และโหมดส่วนขยายที่รองรับยังไม่ได้รับการตรวจสอบอย่างสมบูรณ์
  • พื้นหลังสีเขียว: กล้องรองรับโหมดส่วนขยายอย่างน้อยหนึ่งโหมด โหมดส่วนขยายที่รองรับทั้งหมดได้รับการตรวจสอบความถูกต้องโดยผ่านผลลัพธ์ทั้งหมด
  • พื้นหลังสีแดง: กล้องรองรับโหมดส่วนขยายอย่างน้อยหนึ่งโหมด โหมดส่วนขยายที่รองรับทั้งหมดได้รับการตรวจสอบแล้ว โดยผลลัพธ์ของโหมดส่วนขยายอย่างน้อยหนึ่งรายการไม่ผ่าน
  • พื้นหลังสีเทา: คุณลักษณะนี้ไม่พร้อมใช้งาน

กล้อง_การตรวจสอบความถูกต้อง_ผลลัพธ์extension_mode_validation_result

รูปที่ 7. สีที่แสดงถึงผลการทดสอบสำหรับกล้องและโหมดส่วนขยาย

ฟังก์ชั่นเครื่องมือตรวจสอบอื่น ๆ

หลังจากการทดสอบทั้งหมดเสร็จสิ้น กิจกรรมรายการกล้องจะมีฟังก์ชันต่อไปนี้:

  • ส่งออกผลการทดสอบ: ส่งออกผลการทดสอบเป็นไฟล์ CSV ไปยังโฟลเดอร์ Documents/ExtensionsValidation
  • รีเซ็ต: ล้างผลการทดสอบที่แคชไว้ทั้งหมด
  • แอปตัวอย่างส่วนขยาย: สลับไปที่โหมดแอปตัวอย่างส่วนขยาย

หลังจากเสร็จสิ้นการทดสอบ คุณสามารถส่งออกผลการทดสอบได้ หากคุณพบปัญหาและจำเป็นต้องตรวจสอบการใช้งานไลบรารีของผู้ขายเวอร์ชันใหม่พร้อมโซลูชันอีกครั้ง ให้รีเซ็ตผลการทดสอบก่อนหน้าและรันโหมดส่วนขยายที่รองรับทั้งหมดบนกล้องทุกตัวอีกครั้งเพื่อตรวจสอบว่าปัญหาได้รับการแก้ไขแล้ว