我有使用C#C ++和最近的java编程的经验,但对于android项目来说还算新。我目前正在开展一个学校项目,要求我打开Android手机上的LED(手电筒)并同时用前置摄像头拍照。我查看过很多不同的帖子,但没有找到答案。有谁知道这是否可能,也许如何做到这一点。先谢谢!
答案 0 :(得分:0)
如果你的设备低于API 21(Lollipop),或者有传统相机,你可能会运气不好,因为旧的hardware.Camera API需要打开相机来操作手电筒。但闪光灯属于后置摄像头,你通常不能打开两个摄像头。
使用新的camera2 API,您可以尝试this function:
private void FlashLightOn() {
CameraManager camManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);
try {
String cameraId =
camManager.setTorchMode(camManager.getCameraIdList()[0];, true);
} catch (Exception e) {}
}
此功能需要相机管理器,但不需要后置摄像头,因此很可能使用它仍然可以打开前置摄像头。