在二维码中启用手电筒 READER

Enable flashlight in QR CODE READER

我想在 android 应用程序中启用手电筒扫描二维码。我正在使用这个库 https://github.com/dlazaro66/QRCodeReaderView。当我已经打开相机进行扫描时,有什么方法可以打开手电筒吗?

您将必须修改库中的 QRCodeReaderView.java 文件。将 "surfaceCreated" 方法替换为以下方法:

@Override
public void surfaceCreated(SurfaceHolder holder) {
    boolean useFlash = true;

    try {
        // Indicate camera, our View dimensions
        mCameraManager.openDriver(holder,this.getWidth(),this.getHeight());
    } catch (IOException e) {
        Log.w(TAG, "Can not openDriver: "+e.getMessage());
        mCameraManager.closeDriver();
    }

    try {
        mQRCodeReader = new QRCodeReader();
        if (useFlash){
            Parameters p = cam.getParameters();
            p.setFlashMode(Parameters.FLASH_MODE_TORCH);
            mCameraManager.setParameters(p);
        }

        mCameraManager.startPreview();
    } catch (Exception e) {
        Log.e(TAG, "Exception: " + e.getMessage());
        mCameraManager.closeDriver();
    }
}

我是该库的作者,我刚刚发布了一个新的 2.0 版本,其中包括该手电筒功能。

现在您可以: mydecoderview.setTorchEnabled(true);

请在此处查看: https://github.com/dlazaro66/QRCodeReaderView