Windows 10 Pro -version 1803蓝牙配置文件访问

时间:2018-05-18 13:12:16

标签: c# wpf bluetooth windows-10

我们希望在Visual Studio 2017中使用C#在我们的WPF应用程序中访问和使用蓝牙配置文件。

问题详情:

平台:Windows 10 Pro - 版本1803。

问题简介:我们正尝试通过桌面(c#)连接手机访问蓝牙配置文件,但是在Windows 10上,配置文件显示启用但配置文件无法正常工作,例如:HFP连接,但是,没有听到语音

我们已在以下蓝牙设备上对此进行了测试:

1.蓝牙CSR 4.0加密狗(CSR8510 A10)(注意:此蓝牙连接并显示HFP并按预期工作,但蓝牙未显示在设备列表中,因此我们无法使用c#以编程方式连接)

2.IOGEAR的蓝牙4.0(型号GBU521W6)(显示在设备列表中,我们的应用程序可以检测设备,但是,HFP无法从应用程序或正常设备部分按预期工作)

必填资料:

1.Hands-Free Profile(HFP) 2.消息访问配置文件(MAP) 3.电话簿访问配置文件(PBAP)

我们已经尝试了以下内容:

  1. 更新驱动程序
  2. 多次尝试卸载安装
  3. 使用了android,ios和windows phone的
  4. 附注:我们的应用程序使用相同的代码适用于Windows 7

1 个答案:

答案 0 :(得分:6)

MAP abd PBAP不是问题,因为它们都是基于OBEX的(这是RFCOMM)。

然而,HandsFree可能存在一些问题。它适用于BlueSoile驱动程序。但是使用标准的微软可能无法正常工作。

第一步,它使用带有HFP UUID的BluetoothSetServiceState来告诉windows安装设备的HFP配置文件的驱动程序。如果功能成功,您应该看到系统中出现2个音频设备:一个是Inout,另一个是Output。您可以使用任何媒体API(DirectSound,旧版API)找到它们。

为了能够使用PBAP和MAP,您无论如何都需要通过RFCOMM连接到您的设备。 WinSock或任何其他方式都很好。

请注意,上述方法仅适用于Microsoft蓝牙驱动程序。其他驱动程序(BlueSoleil,Toshiba)具有完全不同的API,因此如果需要支持它们,您必须将其添加到您的应用程序中。

或者您可以简单地查看BluetoothFramework