Como se vê, uma vez que todos os serviços em uso por um dispositivo são desativados, o dispositivo é liberado e desconectado pelo Windows automaticamente. No meu exemplo de exemplo abaixo para o WH-1000XM3, trata-se de voz e música, e a maioria dos fones de ouvido funciona da mesma maneira. Obviamente, isso dependerá do dispositivo em uso.
Você precisará das Ferramentas de Linha de Comando Bluetooth .
A voz é realmente o serviço mãos livres (HFP) e a música é apenas um coletor de áudio (A2DP). Os identificadores de serviço serão necessários e podem ser descobertos através do uso do btdiscovery
comando do pacote acima ou da lista de serviços Bluetooth . Voz HFP é 111e
, música A2DP é 110b
.
Por btcom
ajuda da linha de comando:
Uso:
btcom {-c|-r} {-bBluetoothAddress | -nFriendlyName} [-s{sp|dun|GUID|UUID}]
-c Create association between COM port and a remote service (Enable non-COM service).
-r Remove association between COM port and a remote service (Disable non-COM service).
-s Remote service to use (Default is Serial Port Service)
-b Bluetooth address of remote device in (XX:XX:XX:XX:XX:XX) format.
-n Friendly name of remote device.
Para desconectar o dispositivo, emita o seguinte (funciona apenas quando executado como administrador no meu caso, usando o Windows 10 1809 (17763.437)):
"C:\Program Files (x86)\Bluetooth Command Line Tools\bin\btcom" -n "WH-1000XM3" -r -s111e
"C:\Program Files (x86)\Bluetooth Command Line Tools\bin\btcom" -n "WH-1000XM3" -r -s110b
Para se conectar novamente, emita o mesmo com em -c
vez de -r
. Isso funciona para outros dispositivos, não apenas para fones de ouvido, desde que todos os serviços / perfis conectados pelo Windows sejam desativados / ativados.
Nota: o uso -n <friendly name>
é muito mais lento que o uso -b <address>
devido à realização da descoberta do Bluetooth.