usar studio para online lector generar escanear con como codigos codigo celular barras android barcode barcode-scanner zxing

studio - Usando ZXing para crear una aplicación de escaneo de códigos de barras de Android



lector de codigos en el celular (7)

Barcode Detection ya está disponible en los servicios de Google Play . Laboratorio de código del proceso de configuración, aquí están los documentos de API y un proyecto de muestra .

Esta pregunta ya tiene una respuesta aquí:

He estado buscando cómo agregar un escáner de código de barras a mi aplicación. ¿Alguien sabe de algún ejemplo o sabe cómo hacer esto fácilmente?


El proyecto ZXing proporciona una aplicación de lector de códigos de barras independiente que, a través del mecanismo de intención de Android, puede ser invocada por otras aplicaciones que deseen integrar el escaneo de códigos de barras.

La forma más sencilla de hacerlo es llamar el ZXing SCAN Intent desde su aplicación, así :

public Button.OnClickListener mScan = new Button.OnClickListener() { public void onClick(View v) { Intent intent = new Intent("com.google.zxing.client.android.SCAN"); intent.putExtra("SCAN_MODE", "QR_CODE_MODE"); startActivityForResult(intent, 0); } }; public void onActivityResult(int requestCode, int resultCode, Intent intent) { if (requestCode == 0) { if (resultCode == RESULT_OK) { String contents = intent.getStringExtra("SCAN_RESULT"); String format = intent.getStringExtra("SCAN_RESULT_FORMAT"); // Handle successful scan } else if (resultCode == RESULT_CANCELED) { // Handle cancel } } }

Al presionar el botón vinculado a mScan se mScan directamente en la pantalla del escáner de código de barras ZXing (o se bloqueará si ZXing no está instalado). Una vez que se haya reconocido un código de barras, recibirá el resultado en su Activity , aquí en la variable de contents .

Para evitar colisiones y simplificar las cosas para usted, ZXing ha proporcionado una clase de utilidad que puede integrar en su aplicación para facilitar la instalación de ZXing, al redirigir al usuario al Android Market si no lo tiene instalado ya.

Finalmente, si desea integrar el escaneo de código de barras directamente en su aplicación sin tener que instalar la aplicación ZXing por separado, entonces es un proyecto de código abierto y ¡puede hacerlo! :)

Editar: Alguien editó esta guía en esta respuesta (suena un poco raro, no puedo garantizar su precisión, y no estoy seguro de por qué están usando Eclipse en 2015):

Paso a paso para configurar zxing 3.2.1 en eclipse

  1. Descargue zxing-master.zip de " https://github.com/zxing/zxing "
  2. Descomprime zxing-master.zip, usa eclipse para importar el proyecto "android" en zxing-master
  3. Descargue core-3.2.1.jar de " http://repo1.maven.org/maven2/com/google/zxing/core/3.2.1/ "
  4. Crea la carpeta "libs" en el proyecto "android" y pega cor-3.2.1.jar en la carpeta libs
  5. Haga clic en proyecto: elija "propiedades" -> "Compilador de Java" para cambiar el nivel a 1.7. A continuación, haga clic en "Android" para cambiar el "objetivo de compilación del proyecto" a Android 4.4.2+, ya que el uso de 1.7 requiere la compilación con Android 4.4
  6. Si "CameraConfigurationUtils.java" no existe en "zxing-master / android / app / src / main / java / com / google / zxing / client / android / camera /". Puede copiarlo de "zxing-master / android-core / src / main / java / com / google / zxing / client / android / camera /" y pegarlo en su proyecto.
  7. Limpiar y construir proyecto. Si su proyecto muestra un error sobre "switch - case", debe cambiarlo a "if - else".
  8. Terminado. Limpiar y construir proyecto. Puede hacer clic en "Propriedades"> "Android"> hacer clic en "Es Bibliotecas" para usar en su proyecto.

El uso de Zxing de esta manera requiere que el usuario también instale la aplicación de escáner de código de barras, lo cual no es ideal. Lo que probablemente desee es incluir Zxing en su aplicación directamente.

Recomiendo usar esta biblioteca: https://github.com/dm77/barcodescanner

Se necesitan todos los problemas de compilación con los que te vas a encontrar tratando de integrar Xzing o Zbar directamente. Utiliza esas bibliotecas debajo de las cubiertas, pero las envuelve en una API muy simple de usar.




Tuve un problema con la implementación del código hasta que encontré un sitio web (no lo puedo encontrar de nuevo ahora) que me explicó que debe incluir el nombre del paquete en el nombre del intent.putExtra.

Retiraría la aplicación pero no reconocería ningún código de barras, y cuando lo cambie.

intent.putExtra("SCAN_MODE", "QR_CODE_MODE");

a

intent.putExtra("com.google.zxing.client.android.SCAN.SCAN_MODE", "QR_CODE_MODE");

Funcionó muy bien. Solo un consejo para cualquier otro programador andorid novato.


Usar el IntentInegrator provisto es mejor. Le permite solicitarle a su usuario que instale el escáner de código de barras si no lo tiene. También te permite personalizar los mensajes. La constante IntentIntegrator.REQUEST_CODE contiene el valor del código de solicitud para onActivityResult para verificar en el bloque if anterior.

IntentIntegrator intentIntegrator = new IntentIntegrator(this); // where this is activity intentIntegrator.initiateScan(IntentIntegrator.ALL_CODE_TYPES); // or QR_CODE_TYPES if you need to scan QR

IntentIntegrator.java