Saltar al contenido

¿Cómo integrar ZXing Library a Android Studio para escanear códigos de barras?

Después de de una prolongada compilación de datos hemos podido resolver esta aprieto que suelen tener algunos de nuestros lectores. Te brindamos la solución y nuestro deseo es que te sea de gran ayuda.

Solución:

Necesita agregar lo siguiente a su build.gradle expediente:

repositories 
    mavenCentral()

    maven 
        url "http://dl.bintray.com/journeyapps/maven"
    


dependencies 
    // Supports Android 4.0.3 and later (API level 15)
    compile 'com.journeyapps:zxing-android-embedded:[email protected]'

    // Supports Android 2.1 and later (API level 7), but not optimal for later Android versions.
    // If you only plan on supporting Android 4.0.3 and up, you don't need to include this.
    compile 'com.journeyapps:zxing-android-legacy:[email protected]'

    // Convenience library to launch the scanning and encoding Activities.
    // It automatically picks the best scanning library from the above two, depending on the
    // Android version and what is available.
    compile 'com.journeyapps:zxing-android-integration:[email protected]'

    // Version 3.0.x of zxing core contains some code that is not compatible on Android 2.2 and earlier.
    // This mostly affects encoding, but you should test if you plan to support these versions.
    // Older versions e.g. 2.2 may also work if you need support for older Android versions.
    compile 'com.google.zxing:core:3.0.1'

Mi build.gradle archivo como este:

apply plugin: 'com.android.application'

android 
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig 
        applicationId "com.myapplication2"
        minSdkVersion 16
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    
    buildTypes 
        release 
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        
    


repositories 
    mavenCentral()

    maven 
        url "https://raw.github.com/embarkmobile/zxing-android-minimal/mvn-repo/maven-repository/"
    


dependencies 
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    // Supports Android 4.0.3 and later (API level 15)
    compile 'com.embarkmobile:zxing-android-minimal:[email protected]'

    // Supports Android 2.1 and later (API level 7), but not optimal for later Android versions.
    // If you only plan on supporting Android 4.0.3 and up, you don't need to include this.
    compile 'com.embarkmobile:zxing-android-legacy:[email protected]'

    // Convenience library to launch the scanning and encoding Activities.
    // It automatically picks the best scanning library from the above two, depending on the
    // Android version and what is available.
    compile 'com.embarkmobile:zxing-android-integration:[email protected]'

    // Version 3.0.x of zxing core contains some code that is not compatible on Android 2.2 and earlier.
    // This mostly affects encoding, but you should test if you plan to support these versions.
    // Older versions e.g. 2.2 may also work if you need support for older Android versions.
    compile 'com.google.zxing:core:3.0.1'

El código está aquí.

Además, para saber cómo usarlo, consulte mi respuesta en Stackoverflow aquí

Contiene método y también código simple que he probado.

A partir de la versión 3 de zxing-android-embedded, solo necesita agregarlos a su build.gradle expediente:

repositories 
    jcenter()


dependencies 
    compile 'com.journeyapps:zxing-android-embedded:[email protected]'
    compile 'com.google.zxing:core:3.2.0'

Siga los pasos en: https://github.com/journeyapps/zxing-android-embedded/

Ahora también permite el modo retrato con cambios simples en el IntentIntegratory formas más sencillas de personalizar las vistas.

La forma más fácil de integrar ZXing para escanear códigos de barras o Qr.

Para referencia completa: escanear código de barras ZXing Android

Agregar dependencias

compile 'me.dm7.barcodescanner:zxing:1.9' 

Actividad de exploración

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import com.google.zxing.Result;

import me.dm7.barcodescanner.zxing.ZXingScannerView;

public class ScanActivity extends AppCompatActivity implements ZXingScannerView.ResultHandler

    private ZXingScannerView mScannerView;

    @Override
    public void onCreate(Bundle state) 
        super.onCreate(state);
        mScannerView = new ZXingScannerView(this);   // Programmatically initialize the scanner view
        setContentView(mScannerView);                // Set the scanner view as the content view
    

    @Override
    public void onResume() 
        super.onResume();
        mScannerView.setResultHandler(this); // Register ourselves as a handler for scan results.
        mScannerView.startCamera();          // Start camera on resume
    

    @Override
    public void onPause() 
        super.onPause();
        mScannerView.stopCamera();           // Stop camera on pause
    

    @Override
    public void handleResult(Result rawResult) 
        // Do something with the result here
       // Log.v("tag", rawResult.getText()); // Prints scan results
       // Log.v("tag", rawResult.getBarcodeFormat().toString()); // Prints the scan format (qrcode, pdf417 etc.)

        MainActivity.tvresult.setText(rawResult.getText());
        onBackPressed();

        // If you would like to resume scanning, call this method below:
        //mScannerView.resumeCameraPreview(this);
    

Si crees que ha resultado de utilidad nuestro post, sería de mucha ayuda si lo compartes con el resto programadores de esta manera contrubuyes a difundir nuestra información.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *