So the solution is:
Use standard http client like DefaultHttpClient or AndroidHttpClient and while processing the request just use the "read" function of the Reader. For example:
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
char[] msgsReadArray = new char[streamingArrayMaxCapacity];
int currentCharsCount = 0;
int currOffset = 0;
int currMsgBytesLength = 0;
while ((currentCharsCount = reader.read(msgsReadArray, currOffset , streamingArrayMaxCapacity - currOffset)) != -1 ) {
String lastStreamingMsg = new String(msgsReadArray, 0, currMsgBytesLength);
currOffset += currentCharsCount;
}
When the connection will be closed you'll get "-1" as the result of the read. Of course you'll have to handle exceptions and problematic situations - and also you might want to decide on a protocol for sending the streaming msgs.