如何在Android中接收UDP数据?

如何在Android中接收UDP数据?

问题描述:

我将数据从PC发送到Android。但我无法在Android中使用UDP接收数据。如何在Android中使用UDP接收数据?我如何在android-display上看到收到的数据?谁能帮我?如何在Android中接收UDP数据?

代码是在这里:

public class MainActivity extends Activity { 
    EditText textOut; 
    EditText port; 
    int UDP_SERVER_PORT = 8255; 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    // setContentView(R.layout.main); 
    try { 
     int port = UDP_SERVER_PORT; 
     Log.d("UDP", "Connecting.."); 
     DatagramSocket clientsocket = new DatagramSocket(port); 
     byte[] receivebuf = new byte[1024]; 
     DatagramPacket receivepacket = 
     new DatagramPacket(receivebuf,receivebuf.length); 
     clientsocket.receive(receivepacket); 
     String modifiedSentence = new String(receivepacket.getData()); 
     System.out.println("FROM SERVER:" + modifiedSentence); 
     clientsocket.close(); 
    } catch (Exception e) { 
     Log.e("UDP", "C: Error", e); 
    } 
    }; 
} 

对于希望数据recevied让我们假设数据转换为字符串,然后你需要一个视图,设置其值等于数据recevied。这对你有意义吗?

+0

谢谢。我怎样才能做到这一点? – 2012-07-18 09:38:29

+0

其简单初始化如下所示的TextView TextView viewToShow = new TextView(context); viewtoShow.settext(//从socket接收到的字符串); – Shachillies 2012-07-18 09:51:21

+0

String receivingtring = new String(receivepacket.getData()); textview.setText(“Received String”+ receivingtring); – 2012-07-18 10:07:39