Sending TCP data from Android (as client) - no data being sent?

J J picture J J · Jun 10, 2011 · Viewed 42.9k times · Source

I'm trying to send data from my Android app to my PC over TCP.

The code is as follows:

Socket socket = new Socket("10.0.78.75", 50505);   

OutputStream out = socket.getOutputStream();       
PrintWriter output = new PrintWriter(out);         

mStatusText.setText("Sending Data to PC");         
output.println("Hello from Android");              
mStatusText.setText("Data sent to PC");            

socket.close();                                    
mStatusText.setText("Socket closed");              

I don't get any errors at all while doing this, however, the server application (written in C#) does not get any data. It sees the client connect to it, and sees that data is being sent, however, the data string comes out empty... And thoughts on why this is happening?

PS: The server code is copied from the following site and has been tested with a C# TCP client. http://www.switchonthecode.com/tutorials/csharp-tutorial-simple-threaded-tcp-server

Answer

Haphazard picture Haphazard · Jun 10, 2011

Try putting an out.flush();out.close(); after the println(..);