Android BLE 在绑定(bind)后断开连接

标签 android bluetooth-lowenergy

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

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

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

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

这两个应用程序都在运行 Android 5 的设备上运行。

最佳答案

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

关于Android BLE 在绑定(bind)后断开连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35046084/

相关文章:

android - 多次显示插页式广告

android - BLE(低功耗蓝牙)配对和绑定(bind)

Android - 连接成功后无法在 onScanResult 回调中找到设备

ios - 创建 iOS BLE HID 服务?

Android 如何读取 BLE 属性 Readable Writable Notifiable GATT Characteristics

java - Android 开发和 TDD

java - 如何从html中获取图像数据

Android Adwhirl 显示不支持的配给类型

android - 如何向操作栏外的 View 添加选项卡?

ios - iOS 中的蓝牙 LE 和 ANCS