我在android中使用自定义相机。当我使用Flash_ON捕捉图像时,图像在Nexus 4中几乎是黑色的。但是它在其他设备上很好。请帮助我。
我的代码如下: -
CameraInfo cameraInfo = new CameraInfo();
Camera.getCameraInfo(cameraId, cameraInfo);
Camera.Parameters parameters = camera.getParameters();
Size bestPreviewSize = determineBestPreviewSize(parameters);
Size bestPictureSize = determineBestPictureSize(parameters);
mSize = bestPreviewSize;
parameters.setPreviewSize(bestPreviewSize.width,.setPreviewSize(bestPreviewSize.width,
parameters.setPictureSize(bestPictureSize.width, bestPictureSize.height);
if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
} else {
parameters.setFlashMode(Parameters.FLASH_MODE_ON);
parameters.setSceneMode(Parameters.SCENE_MODE_AUTO);
parameters.setFocusMode(Parameters.FOCUS_MODE_AUTO);
}
camera.setParameters(parameters);
答案 0 :(得分:2)
只需更改您需要设置的参数值,如下所示
parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);
Flash应自动关闭。如果它没有,则在快门回叫中手动关闭
ShutterCallback shutterCallback = new ShutterCallback() {
@Override
public void onShutter() {
try {
Parameters params = camera.getParameters();
params.setFlashMode(Parameters.FLASH_MODE_OFF);
camera.setParameters(params);
} catch (Exception e) {
}
}
};