无法实例化新的GattDeviceService

时间:2015-08-04 21:51:10

标签: c# wpf windows-runtime bluetooth-lowenergy

我是蓝牙LE的新手,我正在尝试写入蓝牙HID设备。

我正在使用Visual Studios 2015并正在构建WPF应用程序。

目前我的代码如下:

var hidDevices = await DeviceInformation
    .FindAllAsync(GattDeviceService.GetDeviceSelectorFromUuid(
        GattServiceUuids.HumanInterfaceDevice));

GattDeviceService bleDevice = await GattDeviceService.FromIdAsync(hidDevices[0].Id);

我之后有一些代码,但是在我尝试创建新的GattDeviceService后,我的代码就停止了。

我知道hidDevices[0]已被占用,但生成的ID显示如下:

  

\\?/BTHLEDEVICE#{00001812-xxxx-xxxx-xxxx-xxxxxxxxxxxx}_Dev_VID&.........

我很好奇这是否正常。

1 个答案:

答案 0 :(得分:0)

GATT API不允许您访问HID服务。

我找到了有关您问题的信息: 蓝牙GATT -Windows.Device.Bluetooth.Gatt

  • API允许Windows应用商店应用开发人员实施GATT客户端 用于从低能量(LE)传感器收集数据的配置文件。
  • 使用GATT API需要蓝牙4.0无线电。
  • GATT API阻止访问以下收件箱并且无效 服务: (蓝牙SIG名称)0x1812 HID通过GATT服务

了解更多信息:https://msdn.microsoft.com/en-us/library/windows/apps/bg182882.aspx