Coder Social home page Coder Social logo

buddhasaikia / materialbarcodescanner Goto Github PK

View Code? Open in Web Editor NEW

This project forked from edwardvanraak/materialbarcodescanner

0.0 1.0 0.0 5.02 MB

Easy to use barcode reader for your Android Project (Uses Google Mobile Vision API)

License: Apache License 2.0

Java 100.00%

materialbarcodescanner's Introduction

MaterialBarcodeScanner

Easy to use barcode reader for your Android Project (Uses Google Mobile Vision API)

Download Android Arsenal

In active development so if you have a suggestion or feature request please feel free to open an issue!

###Overview

  • Integrate in a few minutes
  • Quick and simple api
  • No external apps required
  • Uses Google Mobile Vision API (fast, local and rotation free)
  • Automatically parses QR Codes, Data Matrix, PDF-417, and Aztec values
  • Supports 1D barcodes: EAN-13, EAN-8, UPC-A, UPC-E, Code-39, Code-93, Code-128, ITF, Codabar
  • Supports 2D barcodes: QR Code, Data Matrix, PDF-417, Aztec

#Setup ##1. Provide gradle dependency

compile 'com.edwardvanraak:MaterialBarcodeScanner:0.0.6-ALPHA'

##2. Build a MaterialBarcodeScanner

    private void startScan() {
        /**
         * Build a new MaterialBarcodeScanner
         */
        final MaterialBarcodeScanner materialBarcodeScanner = new MaterialBarcodeScannerBuilder()
                .withActivity(MainActivity.this)
                .withEnableAutoFocus(true)
                .withBleepEnabled(true)
                .withBackfacingCamera()
                .withText("Scanning...")
                .withResultListener(new MaterialBarcodeScanner.OnResultListener() {
                    @Override
                    public void onResult(Barcode barcode) {
                        barcodeResult = barcode;
                        result.setText(barcode.rawValue);
                    }
                })
                .build();
        materialBarcodeScanner.startScan();
    }

Hook it up to a button

  fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                startScan();
            }
        });

##3. Start scanning!

Check out the full example project for code required for camera permissions on Android 6.0 Marshmallow

#Additional Setup

##Center tracking mode

By default a barcode is tracked/highlighted at the location at which it was found.
With center tracking mode a square image will be shown during scanning that will turn green when a barcode is found. Please note that you can still scan a barcode outside the center tracker! This is purely a visual change.

To activate center tracking mode simply call the following builder method:

.withCenterTracker()

If you want to provide your own image for the tracker you can use:

.withCenterTracker(R.drawable.your_tracker_image, R.drawable.your_detected_state_tracker_image):

##Exclusive barcode scanning

In some situations you might want to scan for only a certain type of barcode like QR-Codes or 2D barcodes. You can do this with the following builder methods:

.withOnlyQRCodeScanning()
.withOnly3DScanning()
.withOnly2DScanning()

If you want to scan for a very specific combination of barcodes you can setup the builder like this:

.withBarcodeFormats(Barcode.AZTEC | Barcode.EAN_13 | Barcode.CODE_93)		

##Screenshots Image

#Developed By

materialbarcodescanner's People

Contributors

edwardvanraak avatar

Watchers

Buddha Saikia avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.