【发布时间】:2015-07-17 01:36:30
【问题描述】:
我想使用 camera2 API 控制智能手机 (Galaxy s6) 的闪光灯。
我检查了它是否可以通过这样的代码使用,
try {
CameraManager mManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);
String [] cameraId = mManager.getCameraIdList();
CameraCharacteristics cameraCharacteristics = mManager.getCameraCharacteristics(cameraId[1]);
Toast.makeText(getApplicationContext(),cameraId[0]+cameraId[1],Toast.LENGTH_LONG).show();
boolean flashAvailable = cameraCharacteristics.get(CameraCharacteristics.FLASH_INFO_AVAILABLE);
if (flashAvailable) {
mManager.openCamera(cameraId[0], new MyStateCallback(), null);
Toast.makeText(getApplicationContext(),"Flash is available",Toast.LENGTH_LONG).show();
} else {
//todo: throw Exception
Toast.makeText(getApplicationContext(),"Flash is not available",Toast.LENGTH_LONG).show();
}
} catch (Exception e) {
e.printStackTrace();
}
但是,Toast 消息:Flash 不可用。
当然,我在清单中声明了权限和硬件功能。
这个设备或camera2 API无法控制闪光灯吗?
【问题讨论】:
标签: flash camera galaxy flashlight