Bloki zapisu Android BluetoothSocket OutputStream są nieograniczone

Muszę programowo zapisać dane, powiedzmy, od 1 do 100 MB w kawałkach po 1024 bajty do zdalnego urządzenia Bluetooth. Oba są urządzeniami z Androidem. Oto przykładowy fragment kodu w moim programie klienckim do przesyłania danych -

bTSocket.connect(); //connect to remote BT device
DataOutputStream outStream = new DataOutputStream(bTSocket.getOutputStream());
byte[] buffer = new byte[1024];
int bytesToTransfer = 1000000;
while (bytesToTransfer > 0) {
    outStream.write(buffer);
    outStream.flush();
    bytesToTransfer -= 1024;
}
outStream.close();

Podczas uruchamiania tego kodu na Androidzie 2.2 (Froyo) działa dobrze. Jednak w przypadku Androida 2.3.4 i 4.0.4, outStream.write (bufor) blokuje się nieskończenie po przesłaniu niektórych danych (powiedzmy 100 KB). Warto wspomnieć, że urządzenie zdalne nie jest skonfigurowane do odsłuchiwania danych. Czy istnieją jakieś ograniczenia dotyczące ilości danych, które można zapisać?

questionAnswers(1)

yourAnswerToTheQuestion