将扫描仪设置为只读QR码并忽略其他类型的条形码

时间:2016-02-16 12:22:46

标签: java android qr-code zxing

我正在使用此库来扫描QR码。这个库非常简单,但我很难设法让它只响应QR码。

它使用了ZXing。

CamView

    //MARK - scannerLiveView
    ZXDecoder decoder=new ZXDecoder();
    decoder.setScanAreaPercent(0.5);

    ScannerLiveView scannerLiveView = (ScannerLiveView) findViewById(R.id.scannerLiveView);
    scannerLiveView.setDecoder(decoder);

我是这样做的。但问题是它响应所有类型的条形码。我想让它只响应QR码。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

问题在于ZXDecoder被硬编码以扫描所有可能的格式。 https://github.com/LivotovLabs/CamView/blob/53e3112592980754628bab2b770ed16900b9c407/CAMView/src/main/java/eu/livotov/labs/android/camview/scanner/decoder/zxing/ZXDecoder.java。您可以创建一个新类QRDecoder,它应该看起来与ZXDecoder非常相似,但它不应创建MultiFormatReader,而应创建QRCodeReader