在我的电脑上,我启动服务器,通过蓝牙将字节发送到Android手机。 我使用相同的Outputstream每隔10秒发送不同的字节。
outputStream.write(buffer);
outputStream.flush();
thisThread.sleep(10000);
缓冲区是一个更改每个循环的bytearray
现在我想阅读Android手机上的缓冲区:
while((bytes = inputStream.read(buffer)) != -1) {
//do something
}
//do more
我现在的问题是read(buffer)不返回-1。 如何通知Android手机已经传输了字节,以便我可以做到 在while循环之后我想要的东西?
答案 0 :(得分:2)
您是否尝试在PC端关闭连接?从你的例子来看,你似乎没有。
[edit]如果你不想关闭PC端的连接,那么发送已知的字节序列,这将指示PC端完成发送数据的andorid app,即。正在等待回应
答案 1 :(得分:0)
试试这个......
while((bytes = inputStream.read(buffer)) > 0)
{
//
}