当我使用以下代码时,结果是闪存已开启,但它出现错误“您的设备似乎不支持相机(或已锁定)。应用程序将关闭”。请建议我一种方法,以便在闪光灯开启的情况下查看相机预览。
private Camera mCamera;
void ledOn(){
Camera.Parameters p = mCamera.getParameters();
p.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
mCamera.setParameters(p);
}
答案 0 :(得分:0)
我遇到了同样的问题。我修改了一些代码及其工作:
public class OpenCvCameraView extends JavaCameraView {
public OpenCvCameraView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public List<String> getEffectList() {
return mCamera.getParameters().getSupportedFlashModes();
}
public boolean isEffectSupported() {
return (mCamera.getParameters().getFlashMode() != null);
}
public String getEffect() {
return mCamera.getParameters().getFlashMode();
}
public void setEffect(String effect) {
if(mCamera != null) {
mCamera.getParameters();
Camera.Parameters params = mCamera.getParameters();
params.setFlashMode(effect);
mCamera.setParameters(params);
}
}
public void cameraRelease() {
if(mCamera != null){
mCamera.release();
}
}
}
并将此方法放入您的主要活动中:
public void turnOnTorch() {
mOpenCVCameraView.setEffect(Camera.Parameters.FLASH_MODE_TORCH);
}
public void turnOffTorch() {
mOpenCVCameraView.setEffect(Camera.Parameters.FLASH_MODE_ON);