繁体   English   中英

两个设备之间的Android蓝牙连接以编程方式失败

[英]Android Bluetooth Connection between two devices programmatically Fails

我正在尝试通过蓝牙连接到设备。 当我按下搜索按钮时,一切都很好。 同样,当我从“检测到的设备”列表中单击设备时,它们也会正确配对。 但是,当我从配对设备列表中单击所需的设备进行连接时,首先是已连接,但在约5秒钟后它们断开了连接并保持配对状态。套接字也关闭了...这就是我得到的: 在此处输入图片说明

代码是: 这里

首先已连接,但约5秒钟后它们断开连接并保持配对。

如果您的设备是低功耗蓝牙设备,那正是蓝牙LE的设计目标。 与传统的蓝牙不同,蓝牙LE可以在很短的时间内保持连接。 数据交换完成后,当前连接立即结束。 下次有数据要交换时,将重新建立连接。

如果问题不是由蓝牙设计引起的,则应由您的代码本身引起。 在您的帖子中,我们可以看到:

该应用程序可能在其主线程上做太多工作。

这意味着您的代码需要花费很长时间进行处理,因此会跳过帧。这可能是因为您在应用程序或数据库访问的核心处执行大量繁重的处理,或导致线程执行错误的任何其他操作停一会儿。

如何解决?

最好的方法是执行与主UI线程分开的线程中的大小无关的所有处理。 这里有一个全面的解释。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM