我正在尝试制作一个程序,我想在同一个wifi中连接两个设备,所以我正在尝试使用套接字。
我在我的电脑上运行服务器代码,在安卓设备上运行客户端。问题是服务器不能在 Windows 上运行,但它在 linux 上运行。我断开了所有的防火墙、windows 和 avast,但我仍然遇到同样的问题。我尝试使用 linux 机器作为服务器,windows 作为客户端,它运行良好。
当我尝试获取套接字“Socket s = ss.accept();”时,我打印了一些打印件以查看它在哪里停止并且 Windows 中的服务器端停止。我没有收到任何错误,它只是卡在那里。
我不知道有什么问题。
服务器端
int port = 2002;
try {
ServerSocket ss = new ServerSocket(port);
Socket s = ss.accept();
InputStream is = s.getInputStream();
ObjectInputStream ois = new ObjectInputStream(is);
System.out.println((String)ois.readObject());
is.close();
s.close();
ss.close();
}catch(Exception e){System.out.println(e);}
客户端:
try{
String hostPortatil = "192.168.1.131";
String host = "192.168.174.1";
int port = 2002;
Socket s = new Socket(hostPortatil, port);
OutputStream os = s.getOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(os);
oos.writeObject(new String("another object from the client"));
oos.close();
os.close();
s.close();
}catch(Exception e){
System.out.println(e);
}