Inicio
DocumentaciĂłn
Recursos
Partners
Comunidad

Recursos

Revisa las actualizaciones de nuestras soluciones y operatividad del sistema o pide soporte técnico.

Partners

Conoce nuestro programa para agencias o desarrolladores que ofrecen servicios de integraciĂłn y vendedores que quieren contratarlos.

Comunidad

Recibe las Ășltimas novedades, pide ayuda a otros integradores y comparte tus conocimientos.

Escanear cĂłdigos de barras y QR - SDK y Point Smart - Mercado Pago Developers

BĂșsqueda inteligente powered by OpenAI 

Escanear cĂłdigos de barras y QR

A continuaciĂłn, encontrarĂĄ informaciĂłn sobre cĂłmo iniciar y gestionar el escĂĄner de Point Smart para la lectura de cĂłdigos de barras y QR.

CĂłdigo de barras

Para iniciar la lectura de cĂłdigos QR del Point Smart, usa la funciĂłn initBarcodeScanner de la clase CameraScanner.

Este proceso usa un llamado de cåmara a través de startActivityForResult, de modo que el método onActivityResult se debe implementar en la actividad para manipular la respuesta de lectura.

Consulta el ejemplo a continuaciĂłn.

          
val cameraScanner = MPManager.cameraScanner
cameraScanner.initBarcodeScanner(this@YourActivity)

        
          
final CameraScanner cameraScanner = MPManager.INSTANCE.getCameraScanner();
cameraScanner.initBarcodeScanner(this);

        

CĂłdigo QR

Para iniciar la lectura de cĂłdigos QR del Point Smart, usa la funciĂłn initQRCodeScanner de la clase CameraScanner.

Este proceso usa un llamado de cåmara a través de startActivityForResult, de modo que el método onActivityResult se debe implementar en la actividad para manipular la respuesta de lectura.

Consulta el ejemplo a continuaciĂłn.

          
val cameraScanner = MPManager.cameraScanner
cameraScanner.initQRCodeScanner(this@YourActivity)

        
          
final CameraScanner cameraScanner = MPManager.INSTANCE.getCameraScanner();
cameraScanner.initQRCodeScanner(this);

        

Procesar la respuesta del escĂĄner

Para gestionar la respuesta de una actividad de escaneo de código QR o de código de barras, usa la función handleQrResponse de la clase CameraScanner en el método onActivityResult.

Esta funciĂłn procesa el resultado del escĂĄner desde la cĂĄmara, validando la respuesta e invocando el callback apropiado segĂșn el resultado. Recibe un objeto MPResponse con un [CameraScannerResponse], representando la respuesta de lectura.

Este mĂ©todo simplifica el proceso de manejo de respuestas del escĂĄner de QR o cĂłdigo de barra en el mĂ©todo onActivityResult, procesando el resultado del escĂĄner desde la cĂĄmara, validando la respuesta e invocando el callback apropiado segĂșn el resultado.

Consulta cĂłmo continuar.

          
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
   super.onActivityResult(requestCode, resultCode, data)

   val cameraScanner = MPManager.cameraScanner

   cameraScanner.handleScannerResponse(this, resultCode, data) { response ->
       response.doIfSuccess { result ->
           // Manejar la respuesta exitosa
           val status = result.status
           val message = result.message
           // ... Hacer algo con la respuesta
       }.doIfError { error ->
           // Manejar el error en la respuesta
           val errorMessage = error.message
           // ... Hacer algo con el error
        }
    }
}

        
          
@Override
protected void onActivityResult(final int requestCode, final int resultCode, final Intent data) {
 super.onActivityResult(requestCode, resultCode, data);

 final CameraScanner cameraScanner = MPManager.INSTANCE.getCameraScanner();
 final Function1<MPResponse<CameraScannerResponse>, Unit> callback = (final MPResponse<CameraScannerResponse> response) -> {

   if (response.getStatus() == ResponseStatus.SUCCESS) {
     final CameraScannerResponse cameraScannerResponse = response.getData();
     // Manejar la respuesta exitosa
     final String result = response.getData().getMessage();
     // ... Hacer algo con la respuesta
   } else {
     // Manejar el error en la respuesta
     final Exception errorMessage = response.getError();
     // ... Hacer algo con el error
   }
   return Unit.INSTANCE;
 };

 cameraScanner.handleScannerResponse(this, resultCode, data, callback);
}

        
CampoDescripciĂłn
resultCode (Int)Valor del resultCode en onActivityResult.
resultData (Intent?)Valor de la fecha en onActivityResult.
MPResponse<CameraScannerResponse>Objeto [MPResponse] que encapsula el estado, el error (si lo hay) y los datos en caso de éxito, que tiene un objeto CameraScannerResponse.
status (CameraScannerStatus)Define el estado de la respuesta. Puede ser "Ok" (la lectura fue exitosa), Error (hubo un error o la lectura se cancelĂł) o Unknown (hubo algĂșn error indeterminado).
message (String)Define el mensaje de la respuesta recibida por escaner. Si es ”Ok”, tendrá el resultado de la lectura del código.