编码我的Android闪存相机像本机相机

时间:2012-08-23 02:48:15

标签: android flash camera native light

我在我的应用程序中开发了一个相机,但是当设置了闪光灯模式并拍摄照片时,出来的灯光很短,并且在最终照片上不起作用。如何拍摄闪光灯,就像拍摄照片时显示2或3级闪光灯的原生相机一样?

2 个答案:

答案 0 :(得分:2)

我解决了这个问题。当我首先点击takepicture按钮时,我用param.setFlashMode(Parameters.FLASH_MODE_TORCH)打开手电筒;在我设置param.setFlashMode(Parameters.FLASH_MODE_ON)之后1秒;并调用takepicture方法。这样我可以模拟原生相机闪光灯

答案 1 :(得分:0)

你需要让你的闪光灯作为火炬工作。

首先,在AndroidManifest.xml中应用权限,如下所示,

<uses-feature android:name="android.hardware.camera" />

<uses-permission
    android:name="android.permission.FLASHLIGHT"
    android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
    android:protectionLevel="normal" />

<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.flash" />

现在使用以下代码启动闪光灯

Camera camera = Camera.open();     
Parameters param = camera.getParameters();
param.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(param);
camera.startPreview();

以下代码用于关闭闪光灯

camera.stopPreview();
camera.release();