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.

MĂ©todo Legacy para lanzar cĂĄmara - CĂĄmara scanner - Mercado Pago Developers

BĂșsqueda inteligente powered by OpenAI 

MĂ©todo legacy para lanzar cĂĄmara

La funciĂłn initBarcodeScanner de la clase CameraScanner en nuestro SDK se utiliza para invocar la funcionalidad de lectura de cĂłdigos que se encuentra en el dispositivo Point Smart. AdemĂĄs, debe implementarse una funciĂłn adicional en la actividad que lo utiliza para manipular la respuesta de lectura.

Importante
Este método para lanzar la cåmara scanner es considerado legacy. Recomendamos actualizar tu integración al método Callback para contar con una implementación simplificada.

Consulta cĂłmo iniciar la lectura de cĂłdigos QR y de barras, y cĂłmo manejar las respuestas, a continuaciĂłn.

CĂłdigo de barras

Para iniciar la lectura de cĂłdigos de barras del Point Smart, comienza por utilizar 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  permita gestionar la respuesta de lectura.

Para su implementaciĂłn, 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, comienza por utilizar 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  permita gestionar la respuesta de lectura.

Para su implementaciĂłn, 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 scanner 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.

Consulta cĂłmo procesar la respuesta.

          
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.