disable the flash explicitly at creating the Preview

This commit is contained in:
tibbi
2016-05-08 23:00:59 +02:00
parent 9504fe9ef8
commit 86fef2c736

View File

@@ -47,6 +47,7 @@ public class Preview extends ViewGroup implements SurfaceHolder.Callback, View.O
surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
canTakePicture = false; canTakePicture = false;
surfaceView.setOnTouchListener(this); surfaceView.setOnTouchListener(this);
isFlashEnabled = false;
} }
public void setCamera(int cameraId) { public void setCamera(int cameraId) {
@@ -123,8 +124,10 @@ public class Preview extends ViewGroup implements SurfaceHolder.Callback, View.O
if (canTakePicture) { if (canTakePicture) {
if (isFlashEnabled) { if (isFlashEnabled) {
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH); parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
camera.setParameters(parameters); } else {
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
} }
camera.setParameters(parameters);
camera.takePicture(null, null, takePictureCallback); camera.takePicture(null, null, takePictureCallback);
} }
canTakePicture = false; canTakePicture = false;