writeDescriptor method

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

实现 FlutterBluetoothPluginPlatform.writeDescriptor

Web 不允许通过描述符写入来订阅通知;请使用 setCharacteristicNotification

Implementation

@override
Future<void> writeDescriptor({
  required String deviceId,
  required String serviceUuid,
  required String characteristicUuid,
  required String descriptorUuid,
  required List<int> value,
}) async {
  final descriptor = await _descriptor(
    deviceId: deviceId,
    serviceUuid: serviceUuid,
    characteristicUuid: characteristicUuid,
    descriptorUuid: descriptorUuid,
  );
  await descriptor.writeValue(Uint8List.fromList(value).toJS).toDart;
  _descriptorValuesController.add(
    BluetoothDescriptorValue(
      deviceId: deviceId,
      serviceUuid: serviceUuid,
      characteristicUuid: characteristicUuid,
      descriptorUuid: descriptorUuid,
      value: List<int>.unmodifiable(value),
    ),
  );
}