Android BLE 连接后断开

Android BLE disconnects after bonding

我正在开发 2 个 Android BLE 应用程序。一个应用程序将充当外围角色,另一个应用程序将充当中心角色。在外设app上,有一个加密特征PROPERTY_WRITEPERMISSION_WRITE_ENCRYPTED

中央应用程序能够连接到外围设备并发现其服务。中央第一次尝试写入加密特征时,系统开始绑定过程,并出现一个用于输入 PIN 的对话框。 PIN码输入正确后,即可成功写入特征。如果中央与外围设备断开连接,然后尝试重新连接,则会短暂建立连接,但随后断开连接。 onConnectionStateChange 回调在外设上接收到,状态为 STATE_CONNECTED,然后立即再次调用,状态为 STATE_DISCONNECTED

除非我手动取消配对设备(从蓝牙设置)然后重新开始连接过程,否则中央无法连接到外设。

我试过这个解决方案,但它对我不起作用。 BLE Device Bonding Remove Automatically in Android

这两个应用程序在 Android 5.

的设备上都是 运行

这个问题似乎在 Android 5.1.1 中得到了解决。最初,我是 运行 Samsung Galaxy Tab A 上 Android 5.0.2 的外围应用程序。我切换到 Nexus 9 运行 5.1.1 和 6.0.1 并没有遇到上述问题。