蓝牙Android误差问题,怎么解决

2025-04-25 21:20:31
推荐回答(1个)
回答1:

1.中兴手机,蓝牙手动断开后,无法再次链接问题。(可能别的手机也存在类似问题)
解决办法: 在连接gatt之前,对bluetoothadapter进行一次scan 顺利解决此问题。

2.Gatt链接不稳定(在部分手机上出现过,此问题先排除硬件问题。此处只针对自己遇到的情况,或许有别的方案,待补充)
解决办法: 由于用到了gattserver,在启动gattserver和连接gatt之间由于未做顺序的限制,导致了此问题。经过反复调试后,发现只需要先创建gattserver,在serviceadded之后,在去进行gatt链接,此时的gatt连接会比较稳定。

3.小米手机遇到的,在gatt连接之后,手动调用gatt.disconnect 和 close。第二次链接后 自动断开,再次连接会重新绑定。
解决办法:也是无意中,看到一篇文章,写的是小米手机在gatt操作的时候 ,最好要做一下sleep操作,可能是因为小米底层对蓝牙的某些东西没有来得及释放(自己猜测)。 于是在gatt 连接上时,在gatt.discoverServices 之前,加上 sleep(500) ,发现断开后在连接 成功率大大提高。