语境:
我正在为移动设备创建一个跨平台的多播客户端-服务器系统。我已经用 Java 创建了服务器端。我还创建了 android 客户端,它运行良好。
我想知道的:
我想知道是否可以使用此示例http://ntrg.cs.tcd.ie/undergrad/4ba2/multicast/antony/example.html中的侦听器程序在 iOS 中创建与我的服务器兼容的客户端- 我在 Java 中创建的一面。
如果上面的例子不起作用,有没有办法我仍然可以使用我的 Java 服务器端并创建一个与 Java 服务器端兼容的本机 iOS 客户端系统?
JAVA服务器端的示例代码供参考:
import java.net.DatagramPacket;
import java.net.InetAddress;
import java.net.MulticastSocket;
//more imports...
class Server2 {
public static MulticastSocket ms1;
public static void main(String[] args) throws IOException {
try {
InetAddress sessAddr1 = InetAddress.getByName("224.2.76.24");
ms1 = new MulticastSocket(5500);
ms1.joinGroup(sessAddr1);
while(true) {
byte[] message = new byte[1024];
message = getIpAddress().getBytes();
DatagramPacket dp = new DatagramPacket(message, message.length, sessAddr1, 5500);
ms1.send(dp);
System.out.println(String.format("Sent message: %s", message));
Thread.sleep(1000);
}
} catch (Exception e) {
System.out.println(String.format("Error: %s", e));
}
}
public static String getIpAddress() {
InetAddress ip;
try {
ip = InetAddress.getLocalHost();
return(String.format("%s",ip.getHostAddress()));
} catch (Exception e) {
return("false");
}
}
}
我测试了链接中的监听器代码,它运行良好。