我是 Android 编程的新手,我想编写一段代码,只需在 127.0.0.1 上发送一个字符串,我就可以在 netcat 上观看它,但问题是当我在我的 android 项目上尝试它时没有任何反应,所以我尝试了一个普通的java项目,一切正常。所以经过大量研究后,我发现......什么都没有
我的安卓代码:
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import java.net.*;
import java.io.*;
public class MainActivity extends Activity {
public static final int MON_PORT = 5001;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button bouton2 = (Button)findViewById(R.id.envoi);
bouton2.setOnClickListener(new OnClickListener(){
public void onClick(View v){
try {
int port=MON_PORT;
InetAddress adresse = InetAddress.getByName("localhost");
DatagramSocket socket;
String leMessage = "test";
int longueur = leMessage.length();
byte[] message= new byte [longueur];
message = leMessage.getBytes();
socket = new DatagramSocket();
DatagramPacket packet = new DatagramPacket(message,longueur,adresse,port);
socket.send(packet);
System.out.println("test d'execution");
socket.close();
} catch (UnknownHostException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (SocketException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
}
我检查了我的 AndroidManifest.xml 和权限:
<uses-permission android:name="android.permission.INTERNET"> </uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"> </uses-permission>
不在应用程序标签之间
我使用基于 Android API 7 的 AVD,但我尝试过使用 API 16 的另一个 AVD,但结果相同,有人可以帮我找出问题所在吗?
谢谢