สำหรับอุปกรณ์ที่ใช้ Android 13 ขึ้นไป อุปกรณ์ Android ซึ่งมีการควบคุมหลายระดับสำหรับความแรงของไฟฉาย ใน Android 12 และต่ำกว่า เฟรมเวิร์กนี้อนุญาตให้ เปิดหรือปิดโหมดไฟฉาย รองรับความแรงของคบเพลิงแบบหลายระดับ อุปกรณ์สามารถเปิดใช้กรณีการใช้งานต่างๆ เช่น การควบคุมความสว่างของจอแสดงผล ไฟฉายตามสภาพแสงและการส่งสัญญาณขอความช่วยเหลือ โดยใช้เอฟเฟกต์แฟลชโดยการส่งแสงแบบกะพริบเป็นแถวอย่างรวดเร็ว เพิ่มอีก ประโยชน์ของฟีเจอร์นี้คือสามารถยืดอายุการใช้งานแบตเตอรี่และเพิ่มประสิทธิภาพ คุณไม่จำเป็นต้องเปิดโหมดไฟฉายด้วยระดับความแรงสูงสุดเสมอไป ซึ่งอาจทำให้เกิดสภาวะการควบคุมความร้อนได้
API สาธารณะ
แอปสามารถใช้ฟีเจอร์การควบคุมความแรงของไฟฉายผ่าน API และคีย์ลักษณะเฉพาะของกล้อง ไม่ต้องการสิทธิ์เข้าถึงกล้องสำหรับ API เหล่านี้เพราะเข้าถึงกล้องไม่ได้
CameraManager API
public void turnOnTorchWithStrengthLevel (String cameraId, int torchStrength)
: ตั้งค่าระดับความสว่างของไฟฉายที่เชื่อมโยงกับcameraId
ในโหมดไฟฉาย หากโหมดไฟฉายปิดอยู่และtorchStrength
มากกว่าหรือเท่ากับ1
ไฟฉายจะเปิดขึ้นตามระดับความแรง ที่ระบุในtorchStrength
public int getTorchStrengthLevel (String cameraId)
: แสดงระดับความสว่างของหน่วยแฟลชที่เชื่อมโยงกับcameraId
คีย์ลักษณะเฉพาะของกล้อง
FLASH_INFO_STRENGTH_MAXIMUM_LEVEL
: ระดับความสว่างสูงสุด HAL ของกล้องลงโฆษณาฟีเจอร์นี้ด้วยการตั้งค่า ค่าที่มากกว่า1
FLASH_INFO_STRENGTH_DEFAULT_LEVEL
: ระดับความสว่างเริ่มต้นของไฟฉาย
การใช้งาน
หากต้องการรองรับฟีเจอร์การควบคุมความแรงของไฟฉายในอุปกรณ์ ให้ใช้รายการต่อไปนี้ อินเทอร์เฟซ AIDL HAL ของกล้อง:
สถานที่: /camera/device/aidl/android/hardware/camera/device/ICameraDevice.aidl
ตรวจสอบว่าการใช้งาน HAL แสดงโฆษณาลักษณะเฉพาะต่อไปนี้ของกล้อง แป้นต่อไปนี้เพื่อรองรับฟีเจอร์การควบคุมความสว่างของไฟฉาย
สำหรับการติดตั้งใช้งาน HAL ของกล้องอ้างอิงเพื่อรองรับการควบคุมความแรงของไฟฉาย
ดู
EmulatedCameraDeviceHWLImpl.cpp
การตรวจสอบความถูกต้อง
ในการตรวจสอบการติดตั้งใช้งานฟีเจอร์การควบคุมความแรงของไฟฉาย ให้เรียกใช้ การทดสอบ VTS และ CTS ต่อไปนี้
- VTS:
/camera/provider/aidl/vts/VtsAidlHalCameraProvider\_TargetTest.cpp
- CTS:
/platform/cts/tests/camera/src/android/hardware/camera2/cts/FlashlightTest.java