FLASH_MODE_TORCH 在 CameraX 中

FLASH_MODE_TORCH in CameraX

我试图通过在我的应用程序的 CameraX 中将闪光灯设置为 FLASH_MODE_TORCH 来让闪光灯一直亮着。但是,我找不到 cameraX 的这种闪光模式。这种模式在 cameraX 中不可用吗?如果没有,是否有其他方法可以让我的闪光灯一直亮着?

您应该可以通过调用 CameraControl.enableTorch(true) 来启用手电筒,它在内部将捕获请求的闪光模式设置为 FLASH_MODE_TORCH

如果相机没有闪光灯(即 CameraInfo.hasFlashUnit() returns false),调用 enableTorch(true) 将无效。

final Camera camera = cameraProvider.bindToLifecycle(...);
final CameraInfo cameraInfo = camera.getCameraInfo();
final CameraControl cameraControl = camera.getCameraControl();

if (cameraInfo.hasFlashUnit()) {
    cameraControl.enableTorch(true); // You can listen to this future to handle errors
}