18

我正在使用打开相机 LED 灯FLASH_MODE_ON

三星 Galaxy Ace 只有三种闪光模式:开、关和自动。

FLASH_MODE_TORCH不适用于三星 Galaxy Tab 和三星 Galaxy Ace 2.2.1

这是我如何打开相机 LED 的代码

    Camera cam;
    cam = Camera.open();     
    Parameters params = cam.getParameters();
    params.setFlashMode(Parameters.FLASH_MODE_ON);
    cam.setParameters(params);
    cam.startPreview();
    cam.autoFocus(new AutoFocusCallback() {
                public void onAutoFocus(boolean success, Camera camera) {
                }
     });

并使用以下方法将其关闭:

cam.stopPreview();
cam.release();

代码参考:在Android中使用相机手电筒

但问题是 LED 灯只亮了 5 秒。然后它会自动关闭。

谁能告诉我问题出在哪里。或以任何方式连续打开 LED 灯,直到其请求停止。

4

1 回答 1

10

我将很快发布我的应用程序的新版本以支持 Galaxy ace。

你可以在这里下载:https ://play.google.com/store/apps/details?id=droid.pr.coolflashlightfree

为了解决您的问题,您应该这样做:

this._camera = Camera.open();     
this._camera.startPreview();
this._camera.autoFocus(new AutoFocusCallback() {
public void onAutoFocus(boolean success, Camera camera) {
}
});

Parameters params = this._camera.getParameters();
params.setFlashMode(Parameters.FLASH_MODE_ON);
this._camera.setParameters(params);

params = this._camera.getParameters();
params.setFlashMode(Parameters.FLASH_MODE_OFF);
this._camera.setParameters(params);

不要担心 FLASH_MODE_OFF 因为这会让灯一直亮着,很奇怪,但这是真的

关闭 LED 只需松开相机

于 2012-03-17T16:28:39.050 回答