一个蓝牙设备有多个应用程序

One bluetooth device with multiple apps

我正在编写一个 android 应用程序来连接 BLE 心率监测设备。 一切正常,直到另一个应用程序尝试连接到 BLE 设备上的相同服务。

一次似乎只能连接一个应用程序。

是否可以同时将同一个 BLE 服务连接到多个应用程序?

我按照Link设置我的蓝牙服务:

你不能那样做,这是BLE不支持的。

您可以使用 BluetoothManager.getConnectedDevices() 获取蓝牙设备列表,即使是您的应用未连接的设备。遗憾的是,您也无法获得这些设备的服务信息。

然后您可以做的是连接到您的应用程序尚未连接的那些并在其上执行服务发现 (BluetoothDevice.connectGatt() / BluetoothGatt.discoverServices()),然后断开您未连接的那些有兴趣。有点麻烦,不过好像对我们有用。