1
votes

I was trying to scan barcode using goggle vision api but am unable my app is scanning qr-codes correctly but when focusing on barcode it can't detect these is my snipe of code suggest me please:

    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();
            }


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

the app is scanning qr-codes perfectly but it can't detect barcodes i can't get it working please help

1

1 Answers

0
votes

You need to set the accepted formats to include "Barcode".

Specific codes to change are:

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

Replace Barcode.DATA_MATRIX | Barcode.QR_CODE with Barcode.ALL_FORMATS