Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 定制相机android中的闪光灯_Java_Android_Camera - Fatal编程技术网

Java 定制相机android中的闪光灯

Java 定制相机android中的闪光灯,java,android,camera,Java,Android,Camera,在这个链接上有一个android的自定义摄像头实现,我想知道我们如何在拍摄图像时打开闪光灯,这是我们自己会做的吗?或任何api来设置示例中的相机模式 请帮忙 谢谢您可以使用设置所需的闪光模式,作为在相机对象中传递的参数的一部分。请参阅有关参数的方法,提供或 您可以使用将所需的闪光模式设置为在相机中传递的参数的一部分。请参阅有关参数的方法,提供或 在您拥有一个摄影机实例后,这相对容易(Camera.open()将返回一个摄影机实例) 首先,您需要使用获取相机参数 Camera.Parameters

在这个链接上有一个android的自定义摄像头实现,我想知道我们如何在拍摄图像时打开闪光灯,这是我们自己会做的吗?或任何api来设置示例中的相机模式

请帮忙


谢谢

您可以使用设置所需的闪光模式,作为在
相机
对象中传递的参数的一部分。请参阅有关参数的方法,提供或


您可以使用将所需的闪光模式设置为在
相机中传递的参数的一部分。请参阅有关参数的方法,提供或


在您拥有一个摄影机实例后,这相对容易(Camera.open()将返回一个摄影机实例)

首先,您需要使用获取相机参数

Camera.Parameters params = yourCameraInstance.getParameters();
接下来,您需要检查正在使用的设备是否能够实现您希望实现的闪存模式,以防您试图告诉设备打开闪存,但它不能。这会导致撞车

 List<String> flashModes = params.getSupportedFlashModes();
最后,将新参数设置为摄影机实例,如下所示:

yourCameraInstance.setParameters(params);

同样,您可以以相同的方式检查其他相机功能:

    List<String> focusModes = params.getSupportedFocusModes();
    if (focusModes.contains(Camera.Parameters.FOCUS_MODE_AUTO)) {
        params.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);
    }
    yourCameraInstance.setParameters(params);
List focusModes=params.getSupportedFocusModes();
if(focusModes.contains(Camera.Parameters.FOCUS\u MODE\u AUTO)){
params.setFocusMode(摄像头.Parameters.FOCUS_MODE_AUTO);
}
yourCameraInstance.setParameters(参数);

希望这对别人有帮助

在拥有摄影机实例后,这相对容易(Camera.open()将返回一个摄影机实例)

首先,您需要使用获取相机参数

Camera.Parameters params = yourCameraInstance.getParameters();
接下来,您需要检查正在使用的设备是否能够实现您希望实现的闪存模式,以防您试图告诉设备打开闪存,但它不能。这会导致撞车

 List<String> flashModes = params.getSupportedFlashModes();
最后,将新参数设置为摄影机实例,如下所示:

yourCameraInstance.setParameters(params);

同样,您可以以相同的方式检查其他相机功能:

    List<String> focusModes = params.getSupportedFocusModes();
    if (focusModes.contains(Camera.Parameters.FOCUS_MODE_AUTO)) {
        params.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);
    }
    yourCameraInstance.setParameters(params);
List focusModes=params.getSupportedFocusModes();
if(focusModes.contains(Camera.Parameters.FOCUS\u MODE\u AUTO)){
params.setFocusMode(摄像头.Parameters.FOCUS_MODE_AUTO);
}
yourCameraInstance.setParameters(参数);

希望这对别人有帮助

但我怀疑这种方法不适用于2.2或以上的所有版本,但会很好地检查,因为
setFlashMode(String)
从API级别5开始就存在,它应该在运行Android 1.6或更高版本的设备上得到支持(基本上是所有设备)。然而,我想硬件制造商实现的驱动程序可能会有一些限制——虽然不确定。但我怀疑这种方法不适用于2.2或以上的所有版本,但会很好地检查,因为
setFlashMode(String)
从API级别5开始就存在,它应该在运行Android 1.6或更新版本的设备上得到支持(基本上是所有的设备)。然而,我认为硬件制造商实现的驱动程序可能存在局限性——尽管不确定。