Emparelhar e desemparelhar
Nesta seção, vocĂȘ entenderĂĄ como emparelhar e desemparelhar dispositivos com a Point Smart usando a classe BluetoothDevicesPairing
.
Emparelhar um dispositivo
Use a função pairDevice
 da classe BluetoothDevicesPairing
 para emparelhar um dispositivo com a Point Smart enviando apenas o endereço (address)
. O acesso é feito por meio do objeto MPManager
, como mostrado abaixo.
val bluetoothPairing = MPManager.bluetooth.paring
bluetoothPairing.pairDevice(address) { response ->
   response.doIfSuccess { result ->
       // Manage pairing success
       val bondState = result.first
       val deviceModel = result.second
       // ... Realizar açÔes adicionais, se necessårio
   }.doIfError { error ->
       // Gerenciar o caso de erro, se necessårio
   }
}
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 açÔes adicionais, se necessårio
     } else {
       // Gerenciar o caso de erro, se necessårio
     }
     return Unit.INSTANCE;
   };
bluetoothPairing.pairDevice(address, callback);
Desemparelhar um dispositivo
Para desemparelhar um dispositivo, use a função unPairDevice
 da classe BluetoothDevicesPairing
acessando pelo objeto MPManager
. Essa função usa como parùmetro o endereço (address)
do aparelho selecionado, como mostrado a seguir.
val bluetoothPairing = MPManager.bluetooth.paring
bluetoothPairing.unPairDevice(address) { response ->
   response.doIfSuccess { result ->
       // Manage pairing success
       val bondState = result.first
       val deviceModel = result.second
       // ... Realizar açÔes adicionais, se necessårio
   }.doIfError { error ->
       // Gerenciar o caso de erro, se necessårio
   }
}
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 açÔes adicionais, se necessårio
     } else {
       // Gerenciar o caso de erro, se necessårio
     }
     return Unit.INSTANCE;
   };
bluetoothPairing.unPairDevice(address, callback);
Descrição dos campos
Campo | Descrição |
address (String) | Localização do dispositivo selecionado, obtida por [BluetoothDeviceModel] . |
callback ((MPResponse<Pair<BluetoothBondState, BluetoothDeviceModel>>) -> Unit) | Função de devolução da chamada que proporciona o resultado do processo de emparelhamento. O [MPResponse] encapsula o estado, o erro (se houver) e os dados no caso de sucesso, que contĂȘm um (Pair) composto por [BluetoothBondState] e [BluetoothDeviceModel] . |
NONEÂ (BOND_NONE) | Indica que o dispositivo nĂŁo estĂĄ emparelhado. |
BONDINGÂ (BOND_BONDING) | Indica que o dispositivo estĂĄ em processo de emparelhamento. |
BONDEDÂ (BOND_BONDED) | Â Indica que o dispositivo estĂĄ emparelhado. |
id (String) | Identificador do dispositivo. |
boundState (Int) | Estado de emparejação do dispositivo. Pode ser true ou false . |
name (String) | Nome do dispositivo proporcionado pelo sistema operacional. |
id (String) | Endereço MAC do dispositivo. |
isConnected (Boolean) | Indica se o dispositivo estå conectado. |