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.

Lanzar cĂĄmara por callback - CĂĄmara scanner - Mercado Pago Developers

BĂșsqueda inteligente powered by OpenAI 

Lanzar cĂĄmara por callback

Esta modalidad centraliza el flujo de lanzamiento de la cåmara scanner en un sólo método, launchScanner, que junto con la utilización de callbacks para el manejo de respuestas, simplifica el proceso de implementación y lectura de códigos.

Para esta implementación, deberås diferenciar qué tipo de código deseas escanear mediante la clase ScanType, y proporcionar el callback a ser invocado con el resultado de la operación, tal como se muestra en el ejemplo a continuación y en las descripciones de los campos a completar.

          
val cameraScanner = MPManager.cameraScanner
/**
* launch camera for scanner code QR
**/
cameraScanner.launchScanner(ScanType.CAMERA_SCANNER_QR) { response ->
   response
       .doIfSuccess { result -> // Manejo del resultado success del scanner result.message } 

       .doIfError { error -> // Manejo del error que resulte del scanner error.message.orEmpty() }

}

/**
* launch camera for scanner Bar code
**/

cameraScanner.launchScanner(ScanType.CAMERA_SCANNER_BARCODE) { response ->
   response
       .doIfSuccess { result -> // Manejo del resultado success del scanner result.message } 

       .doIfError { error -> // Manejo del error que resulte del scanner error.message.orEmpty() }

}

        
          
final CameraScanner cameraScanner = MPManager.INSTANCE.getCameraScanner();
final Function<MPResponse<CameraScannerResponse>, Unit> callback = new Function<MPResponse<CameraScannerResponse>, Unit>() {
   @Override
   public Unit apply(MPResponse<CameraScannerResponse> response) {
       if (response.getStatus() == ResponseStatus.SUCCESS) {

           // Manejar la respuesta exitosa
           CameraScannerResponse cameraScannerResponse = response.getData();

           String result = cameraScannerResponse.getMessage();
           // ... Hacer algo con el resultado
       } else {

           // Manejar el error en la respuesta
           String errorMessage = response.getError();
           // ... Hacer algo con el error
       }
       return Unit.INSTANCE;
   }
};

/**
* Lanzar el escĂĄner de cĂĄmara QR o Barra con el callback: ScanType.CAMERA_SCANNER_QR - ScanType.CAMERA_SCANNER_BARCODE
*/

cameraScanner.launchScanner(ScanType.CAMERA_SCANNER_QR, callback);

        
CampoDescripciĂłn
ScanTypeClase que contiene los tipos de cĂłdigo a ser leĂ­dos por la cĂĄmara. Los valores posibles son:

- CAMERA_SCANNER_QR: representa la lectura de cĂłdigos QR.

- CAMERA_SCANNER_BARCODE: representa la lectura de cĂłdigos de barras.
callback (MPResponse) -> UnitCallback a ser invocado con el resultado de la operaciĂłn del escĂĄner. Recibe un objeto MPResponse con un CameraScannerResponse.