想带大家认识 Flutter Blue 套件 怎麽使用。
了解里面的参数。
蓝牙中具体有些哪些:蓝牙名字(name)蓝芽装置(device)蓝牙信号强度(riss)蓝牙服务(service) 蓝牙服务下面又有小服务。
可以去监听 Stream = FlutterBlue.instance.state
BluetoothState
可以去监听 Stream = FlutterBlue.instance.scanResults
当搜寻到 ScanResult 拿到里面的 device 後。
stream: device.services,
BluetoothService
可以每 2 秒监听 Devices 这样子。
Stream.periodic(Duration(seconds: 2)).asyncMap((_) => FlutterBlue.instance.connectedDevices),
FlutterBlue flutterBlue = FlutterBlue.instance;
// Start scanning
flutterBlue.startScan(timeout: Duration(seconds: 4));
// Listen to scan results
var subscription = flutterBlue.scanResults.listen((results) {
// do something with scan results
for (ScanResult r in results) {
print('${r.device.name} found! rssi: ${r.rssi}');
}
});
// Stop scanning
flutterBlue.stopScan();
// Connect to the device
await device.connect();
// Disconnect from device
device.disconnect();
List<BluetoothService> services = await device.discoverServices();
services.forEach((service) {
// do something with service
});
https://pub.dev/packages/flutter_blue#read-and-write-characteristics
var characteristics = service.characteristics;
for(BluetoothCharacteristic c in characteristics) {
List<int> value = await c.read();
print(value);
}
// Writes to a characteristic
await c.write([0x12, 0x34])
https://pub.dev/packages/flutter_blue#read-and-write-descriptors
// Reads all descriptors
var descriptors = characteristic.descriptors;
for(BluetoothDescriptor d in descriptors) {
List<int> value = await d.read();
print(value);
}
// Writes to a descriptor
await d.write([0x12, 0x34])
https://pub.dev/packages/flutter_blue#set-notifications-and-listen-to-changes
await characteristic.setNotifyValue(true);
characteristic.value.listen((value) {
// do something with new value
});
https://pub.dev/packages/flutter_blue#read-the-mtu-and-request-larger-size
final mtu = await device.mtu.first;
await device.requestMtu(512);
<<: [Day - 20] - Spring 一日优雅组态配置就上手
>>: 其它的 lifecycle 或 vue router 的 hook
因为实在有太多东西想分享了,但已经 29 天了 我们先来个 iOS 打包步骤 完成开发後再来就是要...
这几天写 String methods 的时候,在句法里发现(regexp)这个词,查了一下原来是 ...
最近要升级 windows 服务器的 ASP.NET Core 2.1 专案到 3.1 版本,发现 ...
在进入正题之前先让大家看看在 Reactive Programming 中的一种使用案例: val ...
参赛心得 很感动终於到了最後一天,虽然之前已经参加过两次了,但可能因为这次是边工作边参加,所以比我预...