1 回答

TA貢獻1788條經(jīng)驗 獲得超4個贊
您必須在清單中擁有互聯(lián)網(wǎng)權(quán)限
<uses-permission android:name="android.permission.INTERNET"/>
您必須在不同的線程中運行網(wǎng)絡相關任務(而不是在主線程中)
您的代碼將如下所示:
btnAction.setOnClickListener(new View.OnClickListener() {
@override
public void onClick(View v) {
new Thread("thread_udp"){
public void run(){
try {
String messageStr = "test!";
int server_port = 1111;
DatagramSocket s = new DatagramSocket();
InetAddress local = InetAddress.getByName("My.Public.Server.IP");
int msg_length = messageStr.length();
byte[] message = messageStr.getBytes();
DatagramPacket p = new DatagramPacket(message, msg_length, local,server_port);
s.send(p);
} catch (Exception e) {
e.printStackTrace()
}
}
}.start()
}
}
添加回答
舉報