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 IntentIntegrator
y 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.