如何使用google vision api扫描条形码

问题描述 投票:1回答:1

我试图使用goggle vision api扫描条形码但是我的应用程序无法正确扫描qr-codes但是当关注条形码时它无法检测到这些是我的代码狙击建议我:

    camerapreview = (SurfaceView) findViewById(R.id.camerapreview);

    barcodeDetector = new BarcodeDetector.Builder(this)
            .setBarcodeFormats(Barcode.DATA_MATRIX | Barcode.QR_CODE)
            .build();
    if (!barcodeDetector.isOperational()) {
        Toast.makeText(Scanner.this, "Could not set up the detector! Update google play services", Toast.LENGTH_LONG).show();
        return;
    }
    cameraSource = new CameraSource
            .Builder(this, barcodeDetector)
            .setRequestedPreviewSize(640, 480)
            .build();

    //add event
    camerapreview.getHolder().addCallback(new SurfaceHolder.Callback() {
        @Override
        public void surfaceCreated(SurfaceHolder holder) {


            try {
                cameraSource.start(camerapreview.getHolder());
            } catch (IOException e) {
                e.printStackTrace();
            }

        }

        @Override
        public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {

        }

        @Override
        public void surfaceDestroyed(SurfaceHolder holder) {

            cameraSource.stop();

        }
    });



    barcodeDetector.setProcessor(new Detector.Processor<Barcode>() {
        @Override
        public void release() {
            try {
                cameraSource.start(camerapreview.getHolder());
            } catch (IOException e) {
                e.printStackTrace();
            }


        }
     ....................

该应用程序正在扫描qr-codes完美但它无法检测条码我无法让它工作,请帮助

android google-vision
1个回答
0
投票

您需要将接受的格式设置为包含“条形码”。

要更改的具体代码是:

barcodeDetector = new BarcodeDetector.Builder(this)
        .setBarcodeFormats(Barcode.ALL_FORMATS)
        .build();

Barcode.DATA_MATRIX | Barcode.QR_CODE替换Barcode.ALL_FORMATS

© www.soinside.com 2019 - 2024. All rights reserved.