我使用编译'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()中的火炬。但我没有成功。这不是一个许可问题,我可以毫无问题地打开和关闭灯。我可以扫描没问题。但我无法用光线扫描。
非常感谢任何帮助或建议。
答案 0 :(得分:0)
我也一直试图对此进行修改。
我看到了一个解决方案,它涉及启动一个每隔几秒运行一次的线程,检查灯是否关闭以及(如果它关闭)将其打开。我无法正常工作。
另一种可能的解决方案是尝试重新编码项目,以便在创建页面时允许外部打开或关闭灯光。