[英]Android:Outputstream.write - issue
我正在尝试将文件传输到远程蓝牙设备,如下所示
while (availableBytes > 0 ) {
bytesRead = inStream.read(tempData,0,tempData.length);
mmOutStream.write(tempData,0,bytesRead);
mmOutStream.flush();
availableBytes = inStream.available();
}/* End of availableBytes */
虽然正在对大文件(500 KB)进行写入,但在12到15分钟后,我将IO异常视为“IOException:Connection timed out”。 当我发送<100 KB的小文件时,我成功转移。 文件传输正在进行时,我没有关闭套接字。 在Android中是否有任何限制,蓝牙插座只能在某个固定的时间限制内处于活动状态?
请就此发表意见
InputStream.available()不会按照您的想法执行:
返回可以从此输入流中读取(或跳过)的字节数,而不会被此输入流的方法的下一个调用方阻塞。
正确的方法是写入,直到你点击bytesRead == -1,发信号EOF(文件结束)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.