Android ZXingScanner(QR扫描仪)和Torch

时间:2016-10-01 20:54:03

标签: android camera zxing torch

我使用编译'me.dm7.barcodescanner:zxing:1.8.4'将ZXing qr扫描仪添加到我的android项目中。

我在片段内显示qrcode扫描程序。我可以毫无问题地扫描和阅读。我遇到的问题是在相机扫描时尝试打开闪光灯(手电筒)。

此代码完美扫描

   View view = inflater.inflate(R.layout.fragment_qrscan, container, false);
      mScannerView = new ZXingScannerView(getActivity());   
      mScannerView.setResultHandler(this); // Register ourselves as a   
      mScannerView.startCamera();
      return mScannerView;

此代码完全打开火炬

        camera = Camera.open();
        Camera.Parameters parameters = camera.getParameters();
        parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
        camera.setParameters(parameters);
        camera.startPreview();
        return view;

如果我尝试打开灯并返回mScannerview,则扫描仪会工作,但指示灯熄灭。我似乎无法让光和qr扫描仪成功地协同工作。光不起作用或我的代码会抛出异常取决于我尝试的代码。我试图使用第一段代码并打开onResume()中的火炬。但我没有成功。这不是一个许可问题,我可以毫无问题地打开和关闭灯。我可以扫描没问题。但我无法用光线扫描。

非常感谢任何帮助或建议。

1 个答案:

答案 0 :(得分:0)

我也一直试图对此进行修改。

我看到了一个解决方案,它涉及启动一个每隔几秒运行一次的线程,检查灯是否关闭以及(如果它关闭)将其打开。我无法正常工作。

另一种可能的解决方案是尝试重新编码项目,以便在创建页面时允许外部打开或关闭灯光。