--> android source code full: BAR Code Scanning | Deskripsi Singkat Blog di Sini

Find The Complete Source Code Android


Showing posts with label BAR Code Scanning. Show all posts
Showing posts with label BAR Code Scanning. Show all posts

Sunday, February 18, 2018

Bar Code & QR Code Scanner

Bar Code & QR Code Scanner

Bar Code & QR Code Scanner is used to scan BAR & QR code scanning. you can see it in this tutorial.





Steps to use Bar Code & QR Code Scanner in your project.

  1. Crate a project(Bar Code & QR Code Scanner Demo) in android studio.

  2. Create a Activity build.gradle and add a dependency to it- 

    // add dependency to use QR code scanning
    compile 'com.journeyapps:zxing-android-embedded:3.4.0'


  3. Now your build.gradle will be like-
    apply plugin: 'com.android.application'
    android {
    compileSdkVersion 26
    defaultConfig {
    applicationId "com.pankaj.barcodedemo"
    minSdkVersion 15
    targetSdkVersion 26
    versionCode 1
    versionName "1.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
    release {
    minifyEnabled false
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
    }
    }

    dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:26.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
    implementation 'com.android.support:design:26.1.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.1'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
    // add dependency to use QR code scanning
    compile 'com.journeyapps:zxing-android-embedded:3.4.0'
    }
     
  4. Create a activity MainActivity.Java and update it-

    package com.pankaj.barcodedemo;
    import android.content.Intent;
    import android.os.Bundle;
    import android.support.design.widget.FloatingActionButton;
    import android.support.v7.app.AppCompatActivity;
    import android.util.Log;
    import android.view.View;
    import android.widget.TextView;
    import android.widget.Toast;
    import com.google.zxing.integration.android.IntentIntegrator;
    import com.google.zxing.integration.android.IntentResult;

    public class MainActivity extends AppCompatActivity {
    private IntentIntegrator qrScan;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // initialize
    qrScan = new IntentIntegrator(this);

    //Specify scanning type like QR/Barcode. Default its scan both type.
    // qrScan.setDesiredBarcodeFormats(IntentIntegrator.QR_CODE_TYPES);
    //Add message to show when scannig
    qrScan.setPrompt("Scan a Barcode/QR Code");

    // Use a specific camera of the device
    qrScan.setCameraId(0);

    //enable beep on scan complete
    qrScan.setBeepEnabled(true);
    qrScan.setBarcodeImageEnabled(true);
    FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);

    fab.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
    //open scanner
    qrScan.initiateScan();
    }
    });
    }

    //Getting the scan results
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
    if (result != null) {

    //if qrcode has nothing in it
    if (result.getContents() == null) {
    Toast.makeText(this, "Result Not Found", Toast.LENGTH_LONG).show();
    } else {
    try {

    //if qr contains data
    ((TextView) findViewById(R.id.tvScanData)).setText(result.getContents());
    Log.e("scan result", result.getContents());
    } catch (Exception e) {
    }
    }
    } else {
    super.onActivityResult(requestCode, resultCode, data);
    }
    }
    }
     
  5. Create a xml activity_main.xml and update it-

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.pankaj.barcodedemo.MainActivity">

    <android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="?attr/colorPrimary"
    app:popupTheme="@style/AppTheme.PopupOverlay" />
    </android.support.design.widget.AppBarLayout>

    <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:showIn="@layout/activity_main">
    <TextView
    android:id="@+id/tvScanData"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:autoLink="web"
    android:text="Scan result will show here." />
    </LinearLayout>

    <android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|end"
    android:layout_margin="@dimen/fab_margin"
    app:srcCompat="@android:drawable/ic_menu_camera" />

    </android.support.design.widget.CoordinatorLayout>
     
  6. If you want to open it in only in one mode like landscape or portrait then add below code to manifest

    <activity
    android:name="com.journeyapps.barcodescanner.CaptureActivity"
    android:screenOrientation="portrait"
    tools:replace="screenOrientation" />
     


  7. All the application development process with Bar Code & QR Code Scanner has completed, Now run the app and look the screen.
     
  8. Now click on camera button to open scanner.



     

  9. Now scan the QR or BAR code and see the result.








  10. Good bye, Thanks to read this blog.