android摄像头api和二维码

android摄像头api和二维码,android,android-camera,Android,Android Camera,帮我这个忙,我正在做一个应用程序,使用相机闪烁二维码,但相机没有响应我有这个码我想先用相机看到一些东西,我会识别二维码的任何帮助都会很好 public class activity_flashqr_normalscreensize extends Activity implements SurfaceHolder.Callback { private Button boton; private SurfaceView VisorQR; SurfaceHolder surfa

帮我这个忙,我正在做一个应用程序,使用相机闪烁二维码,但相机没有响应我有这个码我想先用相机看到一些东西,我会识别二维码的任何帮助都会很好

     public class activity_flashqr_normalscreensize extends Activity   implements 
 SurfaceHolder.Callback {

 private Button boton;
private SurfaceView VisorQR;
SurfaceHolder surfaceHolder;
android.hardware.Camera theCamera;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.flashqr_normalscreensize_esp);
    boton = (Button)findViewById(R.id.btnfoto);
    VisorQR = (SurfaceView)findViewById(R.id.visorqr);
    surfaceHolder = VisorQR.getHolder();
    surfaceHolder.addCallback(this);
    surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS)
}

public void refreshCamera() {
    if (surfaceHolder.getSurface() == null) {
        return;
    }

    try {
        theCamera.stopPreview();
    }

    catch (Exception e) {
    }

    try {
        theCamera.setPreviewDisplay(surfaceHolder);
        theCamera.startPreview();
    }
    catch (Exception e) {
    }
}

@Override
public void surfaceCreated(SurfaceHolder holder) {
    try {
        theCamera.lock();
        theCamera = android.hardware.Camera.open();
    }

    catch (RuntimeException e) {
        System.err.println(e);
        return;
    }

    android.hardware.Camera.Parameters param;
    param = theCamera.getParameters();
    param.setPreviewSize(350, 250);
    theCamera.setParameters(param);

    try {
        theCamera.setPreviewDisplay(surfaceHolder);
        theCamera.startPreview();
    }

    catch (Exception e) {
        System.err.println(e);
        return;
    }
}

@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
    refreshCamera();
}

@Override
public void surfaceDestroyed(SurfaceHolder holder) {
    theCamera.stopPreview();
    theCamera.release();
    theCamera = null;
}
 }

我找到了一个很好的教程来实现我想要的

此外,要使用zxing库,您需要将其添加到build.gradle.app中 依赖android studio

    compile 'com.journeyapps:zxing-android-embedded:3.2.0@aar'
    compile 'com.google.zxing:core:3.2.1'