根据Google Anymote 协议文档,可以通过发送 mDNS 数据包发现 GoogleTV 设备。
GoogleTV 设备应通过使用字符串“ _anymote._tcp.local ”标识自己来响应。
但是,当我发送一个 mDNS 数据包时,我会收到一个带有NSZGT1-6017678.local的响应。
除非文档不正确,否则我看不到将设备识别为 GTV 设备的方法。
有什么我想念的吗?
例如,在以下代码中,只有 airplay 字符串实际上返回了任何设备:
String airplay = "_airplay._tcp.local.";
String gtv1 = "_anymote._tcp.local.";
String gtv2 = "_anymote._tcp.local";
JmDNS jmDNS = JmDNS.create();
jmDNS.addServiceListener(gtv1, new ServiceListener() {
public void serviceResolved(ServiceEvent event) {}
public void serviceRemoved(ServiceEvent event) {}
public void serviceAdded(ServiceEvent event) {
System.out.println("Service added: " + event.getName() + " " + event.getInfo().getName());
}
});