Camera 在android的Nexus4中使用Flash_拍摄黑色图像

Camera 在android的Nexus4中使用Flash_拍摄黑色图像,camera,Camera,我在安卓系统中使用定制相机。当我打开闪光灯拍摄图像时,图像太暗,仅在Nexus 4中几乎是黑色。但在其他设备上也可以。请帮助我 我的代码如下:- CameraInfo cameraInfo = new CameraInfo(); Camera.getCameraInfo(cameraId, cameraInfo); Camera.Parameters parameters = camera.getParameters(); Size bestPreviewSiz

我在安卓系统中使用定制相机。当我打开闪光灯拍摄图像时,图像太暗,仅在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);

只需更改需要设置的参数值,如下所示

parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);
闪光灯应自动关闭。如果没有,则在快门回调中手动关闭

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) {
        }
    }
};