c# wpf bluetooth windows-10

c# - Acceso a los perfiles de bluetooth de Windows 10 Pro versión 1803



wpf windows-10 (1)

Estamos buscando acceder y usar los perfiles Bluetooth en nuestra aplicación WPF usando C # en Visual Studio 2017.

Detalles de la emisión:

Plataforma: Windows 10 Pro - versión 1803.

Resumen del problema: estamos intentando acceder a los perfiles de Bluetooth a través de la computadora de escritorio (c #) de los teléfonos conectados, sin embargo, en las ventanas 10 el perfil está habilitado pero los perfiles no funcionan, por ejemplo: HFP se conecta, sin embargo, la voz no se escucha

Hemos probado esto en los siguientes dispositivos Bluetooth:

1. Bluetooth CSR 4.0 Dongle (CSR8510 A10) (Nota: este Bluetooth se conecta y muestra HFP y funciona como se esperaba, sin embargo, el Bluetooth no aparece en la lista de dispositivos y, por lo tanto, no podemos conectarnos mediante programación con c #)

2. Bluetooth 4.0 de IGEAR (modelo GBU521W6) (se muestra en la lista de dispositivos y nuestra aplicación puede detectar un dispositivo, sin embargo, HFP no funciona como se esperaba, tanto desde la aplicación como desde la sección del dispositivo normal)

Perfiles requeridos:

1.Hand-Free Profile (HFP) 2.Message Access Profile (MAP) 3.Phone Book Access Profile (PBAP)

Ya hemos intentado con lo siguiente:

  1. Actualizando drivers
  2. Intenté desinstalar muchas veces
  3. Usamos teléfonos android, ios y windows.

Nota al margen: nuestra aplicación con el mismo código funciona en Windows 7


MAP y PBAP no es un problema porque ambos están basados ​​en OBEX (que es RFCOMM).

Sin embargo, puede haber algunos problemas con HandsFree. Funciona muy bien con los controladores BlueSoile. Pero con Microsoft estándar puede que no funcione.

El primer paso es usar BluetoothSetServiceState con UUID HFP para indicar a Windows que instale los controladores para el perfil HFP de su dispositivo. Si la función tiene éxito, debería ver 2 dispositivos de audio aparecidos en su sistema: uno es Inout y otro es Output. Puede encontrarlos utilizando cualquier API de medios (DirectSound, API heredada).

Para poder trabajar con PBAP y MAP, debe conectarse a su dispositivo a través de RFCOMM. WinSock o cualquier otra forma es buena.

Tenga en cuenta que el método anterior solo funciona con los controladores de Bluetooth de Microsoft. Otros controladores (BlueSoleil, Toshiba) tienen una API absolutamente diferente, por lo que debe agregarlos a su aplicación si necesita ser compatible con ellos.

O simplemente puede echar un vistazo a BluetoothFramework