我正在构建一个通过蓝牙从外部设备读取数据的应用程序。设备发送多个时间数据,这里是用于从蓝牙读取数据的代码片段。
while(true)
{
inputStream.read(bytes);
// reset of code goes below
}
设备不发送数据后如何终止此循环。
我正在构建一个通过蓝牙从外部设备读取数据的应用程序。设备发送多个时间数据,这里是用于从蓝牙读取数据的代码片段。
while(true)
{
inputStream.read(bytes);
// reset of code goes below
}
设备不发送数据后如何终止此循环。
当您的 inputStream 完成读取时(大概它会在某个时间点或超时返回 null ......很难知道,因为我们不知道您的 inputStream 的性质是什么)您将调用break
您的循环。
如果您提供有关此阅读实际内容的更多详细信息,则为您提供指导会更容易。
一般来说,while(true)
在这种情况下这样做并不是一个好主意,因为您正在为自己设置一个永远不会退出该循环的情况。
从逻辑的角度来看,你为什么要在一个循环中这样做?
你的意思可能是......
while((bytes = inputStream.read(someNumber)) != null){
//do something with byte slice here
}
还是您担心连接本身可能会失败?您将需要提供更多关于您在此处尝试实现的目标的详细信息。