[英]Using datagram sockets between android app and java program
我有一些严重的问题,我的Android应用程序与Java程序之间通过数据报套接字进行通信。 我的android应用应该是客户端,并具有以下套接字等代码:
try {
InetAddress ipAdress = InetAddress.getLocalHost();
int portNo = 4324;
DatagramSocket clientSocket = new DatagramSocket();
String sendString = "&%#!check_connection!#%&";
DatagramPacket packet = new DatagramPacket(sendString.getBytes(), sendString.length(), ipAdress, portNo);
clientSocket.send(packet);
// Receive response
} catch (Exception e) {
e.printStackTrace();
}
我的Java程序应该这样接收它:
while(waitingForClient) {
try {
System.out.println("test 1");
DatagramPacket packet = new DatagramPacket(receiveData, receiveData.length);
System.out.println("test 2");
serverSocket.receive(packet);
System.out.println("test 3");
String getData = new String(packet.getData());
System.out.println(getData);
mainFrame.logArea.append(getData + "\n");
} catch (Exception e) {
e.printStackTrace();
}
}
android应用程序中的所有代码都已执行,但在我的java程序的代码中,它仅达到“测试2”(从未打印出测试3)...
我的Android设备和PC均连接到同一路由器。
任何帮助将不胜感激 :)
InetAddress ipAdress = InetAddress.getLocalHost();
您的android应用正在尝试自行连接,请传入运行Java程序的计算机的IP地址
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.