[英]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.