Android将RFCOMM spsperial提供给PC,PC应用未关闭连接

时间:2019-04-05 07:48:46

标签: android rfcomm

我的Android应用通过桌面应用通过蓝牙接收串行通信。我无法控制该桌面应用程序在做什么。

使用Google BluetoothChat示例代码(https://github.com/googlesamples/android-BluetoothChat)。我设法使其正常工作,并且在某种程度上,我可以简单地将字节放入我的android应用中并写入文件。

但是,代码功能类似于

1-Android收听

2-PC发送数据,Android接受连接读取数据并写入文件

3-阅读时,Android遇到异常(客户端关闭连接?)并关闭连接

4-回到第一,并听接下来的几个字节

发生了什么事。对于正常的几个字节,从PC发送。有用。但是,当我发送许多字节(大约3KB至6KB)时,PC应用程序将在成功发送1次后冻结(即Android应用程序可以接受来自PC的第一个6kb发送操作,但是在第二次按send之后,Android应用程序会收到但PC应用程序将崩溃)。

我有两种情况

A。 android app第一次接收数据后。我关闭了PC应用程序,而我在android应用程序中的代码将收到一个异常,指出连接已关闭。之后,我可以重新启动PC应用程序并再次成功发送。我可以重复很多次,它将起作用。

B。 android app第一次接收数据后。我没有关闭PC应用程序并尝试第二次发送。 PC应用程序将崩溃!

在PC /桌面应用程序上,我什么都控制不了。因此,请勿提出任何涉及改变桌面应用程序操作或发送数据方式的建议。

我知道PC应用程序正在运行。看来,如果发送了许多字节,Android不会收到异常信号来表明连接已关闭。这是一个难题。

请参考我之前的问题,因为在很多方面它都与此相似!

How do I dump serial communication as file through Android bluetooth serial RFCOMM

0 个答案:

没有答案