private void performWrite(InputStream dataSource) throws ConnectionException {
final byte[] buffer = new byte[16 * 1024];
BufferedInputStream bufferedInputStream = new BufferedInputStream(dataSource);
int bytesRead = 0;
while (bytesRead > -1) {
bytesRead = bufferedInputStream.read(buffer);
Log.d("bytesRead", String.valueOf(bytesRead));
Socketconnection.write(buffer, 0, bytesRead);
}
}
I'm using TCP socket and I'm stuck to why bytesRead goes down to 512 bytes. Can somebody help explain why this is happening? Also, can somebody suggest a solution to this?
D/bytesRead: 16384
D/bytesRead: 16384
D/bytesRead: 16384
D/bytesRead: 16384
D/bytesRead: 13422
D/bytesRead: 1536
D/bytesRead: 512
D/bytesRead: 512
D/bytesRead: 512
D/bytesRead: 512
D/bytesRead: 512
D/bytesRead: 512
......Same...