你如何获得蓝牙设备的实际名称? C ++

时间:2015-10-13 11:25:15

标签: c++ bluetooth sensor

我是蓝牙编程新手。我正在使用Bluetooth in Windows的Microsoft方法。我有一个心率传感器,并想出了如何创建服务和特征缓冲区来迭代这些服务下可用的服务和特征。

但是如何获得设备的实际名称(就像配对设备时在常规Windows应用程序中显示的那样)?例如,我希望获得类似" Big Company心率传感器版本6的内容。"

我正在使用C ++,Windows 8.1和Visual Studio 2013.我在SO上尝试了不同的解决方案,但它们告诉我如何查找特定于服务的信息。

谢谢!

2 个答案:

答案 0 :(得分:0)

您使用BluetoothGetDeviceInfo,其中设备名称位于.szName

BLUETOOTH_DEVICE_INFO成员中

答案 1 :(得分:0)

首先,您需要通过调用BluetoothAdapter.getDefaultAdapter()来获取蓝牙适配器

接下来,您将从蓝牙适配器调用startDiscovery()。此时将开始发现过程,以便您可以使用ACTION_FOUND,ACTION_DISCOVERY_STARTED,ACTION_DISCOVERY_STARTED注册BroadcastReceiver。对于找到的每个设备,意图将携带包含BluetoothDevice对象的额外字段EXTRA_DEVICE,除非您想在发现HeartMonitor后结束脚本。一定要在Activity的onDestroy方法上取消注册接收器。

希望这有帮助:)祝你好运。