Công cụ xác thực tiện ích mở rộng máy ảnh

Công cụ xác thực tiện ích mở rộng Máy ảnh cho phép nhà sản xuất thiết bị xác minh rằng thư viện của nhà cung cấp OEM Tiện ích mở rộng máy ảnh được triển khai chính xác. Công cụ này bao gồm các bài kiểm tra xác nhận tự động và thủ công.

  • Kiểm tra xác thực tự động: xác thực rằng giao diện thư viện của nhà cung cấp được triển khai chính xác. Ví dụ: nếu cần có CaptureProcessor để chụp ảnh thì các thử nghiệm sẽ xác thực rằng ImageCaptureExtenderImpl#getCaptureStages() trả về các phiên bản CaptureStage cần thiết để chụp ảnh.

  • Kiểm tra xác thực thủ công: Xác thực hiệu ứng hình ảnh và chất lượng của hình ảnh xem trước và hình ảnh được chụp. Ví dụ: các thử nghiệm cho phép nhà sản xuất thiết bị xác thực theo cách thủ công xem hiệu ứng chỉnh sửa khuôn mặt có được áp dụng chính xác hay cường độ hiệu ứng mờ có đủ hay không.

Mã nguồn của công cụ xác thực là một phần của ứng dụng thử nghiệm tiện ích mở rộng trong kho lưu trữ Android Jetpack .

Xây dựng công cụ xác thực tiện ích mở rộng Máy ảnh

Để xây dựng công cụ xác thực tiện ích mở rộng, hãy làm theo các bước sau:

  1. Tải xuống mã nguồn thư viện Android Jetpack. Để biết chi tiết, hãy xem phần Kiểm tra mã của Android Jetpack README .

  2. Xây dựng APK tiện ích mở extensionstestapp . Điều này cho phép chạy thử nghiệm xác nhận thủ công.

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

    APK được xuất ra theo đường dẫn sau:

      path/to/checkout/out/androidx/camera/integration-tests/camera-testapp-extensions/build/outputs/apk/debug/camera-testapp-extensions-debug.apk
    
  3. Xây dựng APK androidTest . APK này cho phép chạy thử nghiệm xác thực tự động.

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

    APK được xuất ra theo đường dẫn sau:

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

Chạy thử nghiệm xác thực tự động

Để chạy thử nghiệm xác thực tự động, hãy cài đặt extensionstestappandroidTest .

  • 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
    

Chạy tất cả các bài kiểm tra tự động

Sau khi cài đặt APK, để chạy tất cả các thử nghiệm tự động nhằm xác thực việc triển khai thư viện của nhà cung cấp, hãy chạy lệnh sau:

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

Nếu tất cả các bài kiểm tra đều vượt qua, kết quả OK sẽ được trả về. Nếu không, báo cáo kiểm tra cuối cùng sẽ hiển thị các lỗi trong thiết bị đầu cuối sau khi tất cả các kiểm tra hoàn tất.

tự động_validation_result-pass

Hình 1. Kết quả OK của các bài kiểm tra tự động

tự động_validation_kết quả-thất bại

Hình 2. Kết quả kiểm thử tự động có lỗi

Chạy thử nghiệm tự động của một lớp cụ thể

Để chạy thử nghiệm tự động của một lớp cụ thể, hãy chỉ định tên và đường dẫn của lớp mục tiêu. Ví dụ sau đây hiển thị lệnh chạy thử nghiệm cho lớp ImageCaptureTest :

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

Chạy thử nghiệm xác thực thủ công

Các bài kiểm tra xác thực thủ công được tìm thấy trong ứng dụng kiểm tra tiện ích mở rộng . Sau khi cài đặt và khởi chạy ứng dụng thử nghiệm tiện ích mở rộng, hãy chuyển sang chế độ công cụ xác thực bằng cách nhấn vào mục menu ở trên cùng bên phải.

Sau khi chuyển sang chế độ công cụ xác thực, trang đầu tiên liệt kê tất cả các camera có khả năng REQUEST_AVAILABLE_CAPABILITIES_BACKWARD_COMPATIBLE . Nếu máy ảnh không hỗ trợ bất kỳ chế độ mở rộng nào thì mục danh sách tương ứng của nó sẽ có màu xám.

camera_validation_result-ban đầu

Hình 3. Chế độ công cụ xác thực

Nhấn vào một trong các camera để xem các chế độ mở rộng để thử nghiệm. Các chế độ mở rộng không được máy ảnh đã chọn hỗ trợ sẽ hiển thị bằng màu xám.

tiện ích mở rộng_mode_validation_result-initial

Hình 4. Các chế độ mở rộng có sẵn cho máy ảnh

Xác minh kết quả xem trước

Để xác minh kết quả xem trước, hãy bắt đầu kiểm tra thủ công bằng cách nhấn vào chế độ mở rộng cho máy ảnh đã chọn. Sau đó, hoạt động chụp ảnh có chứa bản xem trước sẽ được hiển thị.

xem trước-bokeh_enabled

Hình 5. Xem trước ảnh có bật hiệu ứng Bo mạch

Hoạt động chụp ảnh hỗ trợ các chức năng sau:

  • Phóng to / thu nhỏ
  • Nhấn để lấy nét
  • Nút chuyển đổi chế độ đèn flash
  • EV +/-
  • Nút chuyển đổi bật/tắt tiện ích mở rộng

Xác minh rằng các chức năng phóng to/thu nhỏ, chạm để lấy nét, đèn nháy và EV +/- hoạt động như mong đợi trong bản xem trước.

Xác minh kết quả hình ảnh đã chụp

Để chụp ảnh, chạm vào nút CHỤP (nút tròn) trong hoạt động chụp ảnh. Thao tác này khởi chạy hoạt động xác thực hình ảnh hiển thị hình ảnh đã chụp.

photo_viewer-bokeh_enabled

Hình 6. Ảnh được chụp có bật hiệu ứng Bo mạch

Hoạt động xác thực hình ảnh bao gồm các chức năng sau:

  • Chụm vào/ra để chia tỷ lệ hình ảnh
  • Trượt sang trái/phải để chuyển đổi ảnh đã chụp
  • Chiếm lại
  • Lưu mục menu hình ảnh

Xác minh xem hình ảnh được chụp có chính xác hay không và khớp với các cài đặt phóng to/thu nhỏ, chạm để lấy nét, đèn nháy và EV +/- đã được đặt khi chụp ảnh.

Nếu kết quả thu được là chính xác, hãy nhấn vào nút PASS (dấu kiểm) ở góc dưới bên phải. Nếu không, hãy nhấn vào nút THẤT BẠI (dấu chấm than) ở góc dưới bên trái.

Xem kết quả kiểm tra

Sau khi chế độ mở rộng được xác minh là đạt hoặc không đạt, mục danh sách dành cho chế độ mở rộng sẽ hiển thị màu nền và chỉ báo khác. Trong chế độ xem danh sách của tất cả các camera, các mục được hiển thị với các màu sau:

  • Nền trắng: Máy ảnh hỗ trợ ít nhất một chế độ mở rộng và các chế độ mở rộng được hỗ trợ chưa được xác thực hoàn toàn.
  • Nền xanh: Camera hỗ trợ ít nhất một chế độ mở rộng. Tất cả các chế độ mở rộng được hỗ trợ đều được xác thực với tất cả các kết quả đều đạt.
  • Nền đỏ: Camera hỗ trợ ít nhất một chế độ mở rộng. Tất cả các chế độ mở rộng được hỗ trợ đều được xác thực với ít nhất một kết quả ở chế độ mở rộng không thành công.
  • Nền màu xám: Tính năng này không khả dụng.

camera_validation_resulttiện ích mở rộng_mode_validation_result

Hình 7. Màu sắc biểu thị kết quả kiểm tra của máy ảnh và chế độ mở rộng

Các chức năng công cụ xác nhận khác

Sau khi tất cả các bài kiểm tra hoàn tất, hoạt động của danh sách camera sẽ cung cấp các chức năng sau:

  • Xuất kết quả kiểm tra: Xuất kết quả kiểm tra dưới dạng tệp CSV vào thư mục Documents/ExtensionsValidation .
  • Đặt lại: Xóa tất cả các kết quả kiểm tra được lưu trong bộ nhớ đệm.
  • Ứng dụng mẫu tiện ích mở rộng: Chuyển sang chế độ ứng dụng mẫu tiện ích mở rộng.

Sau khi hoàn thành quá trình kiểm tra, bạn có thể xuất kết quả kiểm tra. Nếu bạn phát hiện thấy sự cố và cần phải xác minh lại phiên bản mới của việc triển khai thư viện nhà cung cấp cùng với các giải pháp, hãy đặt lại kết quả kiểm tra trước đó và chạy lại tất cả các chế độ mở rộng được hỗ trợ trên tất cả các máy ảnh để xác minh rằng sự cố đã được khắc phục.