gpt4 book ai didi

关闭蓝牙并重新打开后,Android 6.0 将不再连接到 BLE 设备

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:23:41 28 4
gpt4 key购买 nike

我编写了一个扫描蓝牙智能设备的应用程序,您可以从列表中选择一个,连接到它并交换一些数据。一切顺利,直到 Android 6.0。

首先,我修复了新的权限系统,以便应用程序在运行时请求位置权限,以便能够扫描设备。有了这个应用程序就可以像以前一样工作,但是在关闭蓝牙并重新打开后,应用程序将不再连接,但总是在 gatt 回调中返回状态代码为 133 的断开连接状态。

然后我尝试了几件事:

  • 重启设备
  • 重新安装了应用
  • 关闭wifi,开启/关闭飞行模式
  • 检查了 NRF 主控制面板,同样的问题和相同的状态码

这一切都没有解决问题。我能够让它再次工作的唯一方法是从菜单“备份和重置”中选择“网络设置重置”选项。这里提供的两款开发手机(Moto G3 和 Samsung S6)都具有此选项,在 Android 6.0 之前从未见过。

我的问题是:是否有其他人遇到此问题,是否有解决方法或解决方法?这可能会造成很多麻烦,关闭/打开蓝牙很常见,并且在处于飞行模式后也会出现问题。

最佳答案

好的,过了一会儿我解决了这个问题。我正在使用 NRF ble 设备,无法连接,但我仍然能够连接到 TI sensorTag 设备。

设备的广告之间存在一些差异,一些标志未为 NRF 设备启用,而且 NRF 设备没有设置设备名称。更改此设置后,我能够再次连接。原来 devicename 必须启用,但可以留空。

在 Android 6.0 ble 堆栈中,与设备的连接方式似乎发生了变化,如果在蓝牙关闭并再次打开后未使用正确的广告设置,则设备将无法再连接。

关于关闭蓝牙并重新打开后,Android 6.0 将不再连接到 BLE 设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35920119/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com