connectedDevice property
연결된 디바이스를 찾는다.
Implementation
Stream<BLEDevice> get connectedDevice async* {
final List deviceInfo =
await _methodChannel.invokeMethod('connected_device');
String name = deviceInfo[0];
String address = deviceInfo[1];
BondState bondState = BondState.getObj(deviceInfo[2]);
bool isConnected = deviceInfo[3];
BLEDevice device = BLEDevice(
name: name,
address: address,
bondState: bondState,
isConnected: isConnected);
logger.d("$name $address $bondState $isConnected");
yield device;
Stream<BLEDevice> stream =
_connectedDeviceEventChannel.receiveBroadcastStream().map((deviceInfo) {
if (deviceInfo != null) {
String name = deviceInfo[0];
String address = deviceInfo[1];
BondState bondState = BondState.getObj(deviceInfo[2]);
bool isConnected = deviceInfo[3];
BLEDevice device = BLEDevice(
name: name,
address: address,
bondState: bondState,
isConnected: isConnected);
return device;
} else {
return BLEDevice(name: "", address: "", bondState: BondState.none);
}
});
yield* stream;
}