在二维码中启用手电筒 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);
我想在 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);