readDescriptor method

  1. @override
Future<List<int>> readDescriptor({
  1. required String deviceId,
  2. required String serviceUuid,
  3. required String characteristicUuid,
  4. required String descriptorUuid,
})
override

实现 FlutterBluetoothPluginPlatform.readDescriptor

Web 要求服务 UUID 已在设备选择时授权。

Implementation

@override
Future<List<int>> readDescriptor({
  required String deviceId,
  required String serviceUuid,
  required String characteristicUuid,
  required String descriptorUuid,
}) async {
  final descriptor = await _descriptor(
    deviceId: deviceId,
    serviceUuid: serviceUuid,
    characteristicUuid: characteristicUuid,
    descriptorUuid: descriptorUuid,
  );
  final bytes = _bytesFromDataView(await descriptor.readValue().toDart);
  _descriptorValuesController.add(
    BluetoothDescriptorValue(
      deviceId: deviceId,
      serviceUuid: serviceUuid,
      characteristicUuid: characteristicUuid,
      descriptorUuid: descriptorUuid,
      value: bytes,
    ),
  );
  return bytes;
}