从Android(作为客户端)发送TCP数据 - 没有数据被发送?

J J*_*J J 12 sockets client android tcp communication

我正在尝试通过TCP将数据从我的Android应用程序发送到我的PC.

代码如下:

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");              
Run Code Online (Sandbox Code Playgroud)

在执行此操作时,我根本没有得到任何错误,但是,服务器应用程序(用C#编写)不会获得任何数据.它看到客户端连接到它,并看到数据正在发送,但是,数据字符串是空的......并且想到为什么会发生这种情况?

PS:服务器代码从以下站点复制,并已使用C#TCP客户端进行测试. http://www.switchonthecode.com/tutorials/csharp-tutorial-simple-threaded-tcp-server

Hap*_*ard 17

尝试把一个out.flush();out.close();println(..);


Coo*_*ter 10

我遇到了同样的问题,而且Haphazard的解决方案对我来说还不够好.我认为你应该使用(在这种情况下)output.flush();output.close();不是out.flush();out.close();.你必须记住互联网许可AndroidManifest.xml:

<uses-permission android:name="android.permission.INTERNET"></uses-permission>
Run Code Online (Sandbox Code Playgroud)

之后<uses-sdk>和之前<application>