在Android中动态打开相机闪光灯

时间:2011-07-11 16:01:31

标签: android camera flashlight

所有

我正在android中进行条形码扫描应用程序。我必须动态打开相机闪光灯,我这样做是通过使用以下代码

mCamera = Camera.open();     
Camera.Parameters params = mCamera.getParameters();
params.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
mCamera.setParameters(params);
mCamera.startPreview();

但它显示了像

这样的例外
ERROR/AndroidRuntime(17291): java.lang.RuntimeException: Fail to connect to camera service

在第

mCamera = Camera.open();  

我认为异常是因为我正在扫描条形码时相机已处于打开模式,而我在这里试图再次打开相机。

有没有办法在不打开相机的情况下打开闪光灯?怎么样?

3 个答案:

答案 0 :(得分:0)

您可以重复使用现有的相机对象,只需设置参数。请注意,并非所有设备都支持闪光灯模式。还有一些,如迷人/史诗(谁实际上使用闪光模式)无法在不断开连接并重新连接到相机的情况下改变状态。

答案 1 :(得分:0)

您正在访问相机设置和相机。检查AndroidMainfest.xml中是否有android.permission.CAMERA使用权限。

答案 2 :(得分:0)

您是否使用了表面视图来打开闪光灯,您正在使用哪种设备,因为某些设备需要使用表面视图才能使闪光灯在其中运行。

这是a link