Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1.- descarga la librera zxing de la paguina oficial https://code.google.com/p/zxing/downloads/list Configurar como librera. Generador de qr zxing.appspot.com, personalizados www.unitaglive.com
1. Extraer el contenido del archivo descargado. 2. Importar el proyecto que esta dentro de la carpeta "android" (es la aplicacin Barcode
Scanner) del archivo que extrajimos, como se lo muestra en el grfico.
level a 1.6, clic en OK, posteriormente nos pedir si deseamos volver a construir el proyecto, hacemos clic en Yes.
- Copiamos el archivo core.jar dentro de la carpeta libs del proyecto, el archivo se encuentra en el sitio donde extrajimos el contenido del .zip dentro de la carpeta core.
- Convertimos el proyecto como librera para poder ser usado en nuestro proyecto.
- Una vez que se consiga volver librera el proyecto tendremos nuevos errores debido a los atributos de unas variables, si no aparecen aun los errores intenta limpiar el proyecto (Project>Clean...), esto porque tarde o temprano aparecern y nos dar error justo en las estructuras switch de 3 clases lo nico que hay que hacer es reemplazarlo por su equivalente en ifs, eso se lo puede hacer de forma automtica para ello nos colocamos sobre los switch y presionamos Ctrl+1 (o Cmd+1 en Mac), tal como lo podemos ver aqu. Con esas correcciones no deberamos tener errores, aunque es probable que sigan apareciendo debido al nivel de API en la que esta el proyecto, ZXing es compatible desde la versin 2.1 para adelante, los posibles errores pueden ser: - Errores en atributos en el archivo AndroidManifest.xml, para solucionarlo simplemente elimine las etiquetas. Hasta el momento ya tenemos el proyecto como librera lista para su uso.
La idea de poder integrar ZXing a nuestro proyecto es la de no tener que depender de la aplicacin Barcode Scanner y hacer que nuestra aplicacin sola capture los cdigos.
1. Vamos a las propiedades de nuestro proyecto (si no se tiene uno, pues lo creamos),
eso es Clic derecho en el proyecto luego Properties, nos vamos a la seccin Android y en la parte inferior adicionamos una librera con el botn Add... y ah aparecer nuestra librera recin configurada, la seleccionamos y presionamos OK.
<activity android:name="com.google.zxing.client.android.CaptureActivity" android:clearTaskOnLaunch="true" android:configChanges="orientation|keyboardHidden" android:screenOrientation="landscape" android:stateNotNeeded="true" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:windowSoftInputMode="stateAlwaysHidden" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> <intent-filter> <action android:name="nombre.de.mi.paquete.SCAN" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity>
Dentro del archivo Intents.java del paquete com.google.zxing.client.android de la librera, buscamos el valor del primer String ACTION (de la clase Scan), cambiamos el valor de "com.google.zxing.client.android.SCAN" por "nombre.de.mi.paquete.S CAN" (nombre del paquete de nuestra aplicacin). Dentro del archivo AndroidManifest.xml de la librera cambiar el valor del nombre del atributo action delintent-filter, cambiamos el valor de "com.google.zxing.client.android.SCAN"por "nombre.de.mi.paquete.S CAN" (nombre del paquete de nuestra aplicacin). Con eso ya tenemos configurada nuestra aplicacin y ya podemos usarla sin ningn problema.
String contenido = intent.getStringExtra("SCAN_RESULT"); String formato = intent.getStringExtra("SCAN_RESULT_FORMAT"); // Hacer algo con los datos obtenidos. } else if (resultCode == RESULT_CANCELED) { // Si se cancelo la captura. } } } Con eso ya podemos usar la librera ZXing para capturar cdigos, el siguiente paso es generar cdigos que tambin se lo puede hacer con esta fantstica librera.
Podemos reemplazar el tipo de QR colocando en vez de "TEXT_TYPE", EMAIL_TYPE, PHONE_TYPE, SMS_TYPE u otro colocando su respectivo dato para la generacin. Cualquier duda o consulta pueden hacerla en los comentarios, estar gustoso en responder si desean mas ejemplos o algo concreto.