Inicio
Documentación
Recursos
Certificaciones
Comunidad

Recursos

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

Comunidad

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

Emparejar y desemparejar - Bluetooth - Mercado Pago Developers

Búsqueda inteligente powered by OpenAI 

Conectar y desconectar

En esta sección, comprenderás cómo emparejar y desemparejar dispositivos con el Point Smart usando la clase BluetoothDevicesPairing.

Emparejar un dispositivo

Usa la función pairDevice de la clase BluetoothDevicesPairing para emparejar un dispositivo con el Point Smart enviando solo la dirección (address). El acceso se hace a través del objeto MPManager, como se muestra a continuación.

          
val bluetoothPairing = MPManager.bluetooth.paring

bluetoothPairing.pairDevice(address) { response ->
   response.doIfSuccess { result ->
       // Manejar el éxito del emparejamiento
       val bondState = result.first
       val deviceModel = result.second
       // ... Realizar acciones adicionales si es necesario
   }.doIfError { error ->
       // Manejar el caso de error si es necesario
   }
}

        
          
final BluetoothDevicesPairing bluetoothPairing = MPManager.INSTANCE.getBluetooth().getParing();

final Function1<MPResponse<Pair<BluetoothBondState, BluetoothDeviceModel>>, Unit> callback =
   (final MPResponse<Pair<BluetoothBondState, BluetoothDeviceModel>> response) -> {
     if (response.getStatus() == ResponseStatus.SUCCESS) {
       final BluetoothBondState bondState = response.getData().getFirst();
       final BluetoothDeviceModel deviceModel = response.getData().getSecond();
       // Realizar acciones adicionales si es necesario
     } else {
       // Manejar el caso de error si es necesario
     }
     return Unit.INSTANCE;
   };

bluetoothPairing.pairDevice(address, callback);

        

Desemparejar un dispositivo

Para desemparejar un dispositivo, usa la función unPairDevice de la clase BluetoothDevicesPairing accediendo a través del objeto MPManager. Esta función usa como parámetro la dirección (address) del dispositivo seleccionado, como se muestra a continuación.

          
val bluetoothPairing = MPManager.bluetooth.paring

bluetoothPairing.unPairDevice(address) { response ->
   response.doIfSuccess { result ->
       // Manejar el éxito del emparejamiento
       val bondState = result.first
       val deviceModel = result.second
       // ... Realizar acciones adicionales si es necesario
   }.doIfError { error ->
       // Manejar el caso de error si es necesario
   }
}

        
          
final BluetoothDevicesPairing bluetoothPairing = MPManager.INSTANCE.getBluetooth().getParing();

final Function1<MPResponse<Pair<BluetoothBondState, BluetoothDeviceModel>>, Unit> callback =
   (final MPResponse<Pair<BluetoothBondState, BluetoothDeviceModel>> response) -> {
     if (response.getStatus() == ResponseStatus.SUCCESS) {
       final BluetoothBondState bondState = response.getData().getFirst();
       final BluetoothDeviceModel deviceModel = response.getData().getSecond();
       // Realizar acciones adicionales si es necesario
     } else {
       // Manejar el caso de error si es necesario
     }
     return Unit.INSTANCE;
   };

bluetoothPairing.unPairDevice(address, callback);

        

Descripción de campos

CampoDescripción
address (String)Ubicación del dispositivo seleccionado, obtenida a través de [BluetoothDeviceModel].
callback ((MPResponse<Pair<BluetoothBondState, BluetoothDeviceModel>>) -> Unit)Función de devolución del llamado que ofrece el resultado del proceso de emparejamiento. El [MPResponse] encapsula el estado, el error (si lo hay) y los datos en caso de éxito, que tiene un (Pair) compuesto por [BluetoothBondState] y [BluetoothDeviceModel].
NONE (BOND_NONE)Indica que el dispositivo no está emparejado.
BONDING (BOND_BONDING)Indica que el dispositivo está en proceso de emparejamiento.
BONDED (BOND_BONDED) Indica que o dispositivo está emparejado.
id (String)Identificador del dispositivo.
boundState (Int)Estado de emparejamiento del dispositivo. Puede ser true o false.
name (String)Nombre del dispositivo ofrecido por el sistema operacional.
id (String)Dirección MAC del dispositivo.
isConnected (Boolean)Indica si el dispositivo está conectado.