我有一個BLE設備(健身追蹤器),這是e.x.當我向其發送特定的寫入請求時顯示一條消息。通過GATT(UWP)發送給BLE設備的寫請求
在Android中它一切正常。該裝置就會立即顯示,它收到的消息:
BluetoothGattCharacteristic characteristic = ... //connecting to BLE device with specific UUID
byte[] data = new byte[] {(byte)0x01, 0x01};
characteristic.setValue(data);
mBluetoothGatt.writeCharacteristic(characteristic);
但在我UWP應用中,藍牙設備沒有表現出任何反應:
var devices = await DeviceInformation.FindAllAsync(GattDeviceService.GetDeviceSelectorFromUuid(new Guid("00001811-0000-1000-8000-00805f9b34fb")), null);
GattDeviceService service = await GattDeviceService.FromIdAsync(devices[0].Id);
var gattCharacteristic = service.GetCharacteristics(new Guid("00002a46-0000-1000-8000-00805f9b34fb")).First();
//Writing request
var writer = new DataWriter();
writer.WriteBytes(new byte[] { 0x01, 0x01 });
await gattCharacteristic.WriteValueAsync(writer.DetachBuffer());
有沒有人有一個想法?
什麼是WriteValueAsync結果值? – Emil
結果值是GattCommunicationStatus.Success – Cristian126
我遇到了同樣的問題。此外,我的應用程序在筆記本上運行良好,但在Windows手機上無效。這似乎是Windows或手機中的問題。您是否嘗試在不同設備上運行此代碼? – Knyaz