我正在为Kyocera E6820编写一个高度专业化的应用程序,该应用程序要求设备的广角相机和手电筒同时打开。
我正在使用Camera2 Android API。问题是默认情况下广角相机不支持闪光灯,所以如果我尝试通过以下方式同时打开手电筒和广角相机:
['foo', 'bar']
我收到错误消息:
mPreviewRequestBuilder.set(CaptureRequest.FLASH_MODE, CaptureRequest.FLASH_MODE_TORCH);
mPreviewRequest = mPreviewRequestBuilder.build();
mCaptureSession.setRepeatingRequest(mPreviewRequest, mCaptureCallback, mBackgroundHandler);
我试图通过使用常规后置摄像头(支持闪光灯)打开闪光灯而不打开它来执行此操作:
W/LegacyRequestMapper: mapAeAndFlashMode - Ignore flash.mode == TORCH;camera does not support it
然而,它没有用,我收到了这条消息:
manager.openCamera(wideAngleCameraID, mStateCallback, mBackgroundHandler);
manager.setTorchMode(rearFacingCameraID, true);
我可以让普通的后置摄像头和手电筒同时进行,但广角没有这样的运气。
有没有人知道解决这个问题的潜在方法?我已查看this post,但没有找到任何有用的内容。由于这是一个专门的应用程序,做一些像生根电话或直接与设备的LED驱动器交谈的问题并不是不可能的,但我需要知道从哪里开始。任何方向或帮助将不胜感激。
答案 0 :(得分:0)
对于任何观看者,我在查看this forum discussion后找到答案。对我来说,亮度值位于
/sys/class/leds/led:torch_0
目录。在手机生根后,我可以通过使用给定here的过程调用adb命令来操纵该值。