我在UWP应用程序中使用DNSSD API。当我想使用DnssdServiceInstance广播DNSSD服务时,似乎创建了多个实例,即使我只调用该方法一次:
//Service Broadcast
_listener = new StreamSocketListener();
_listener.ConnectionReceived += _listener_ConnectionReceived;
await _listener.BindServiceNameAsync("56788");
_service = new DnssdServiceInstance(Username + "._myapp._tcp.local",
NetworkInformation.GetHostNames().FirstOrDefault(x => x.Type == HostNameType.DomainName && x.RawName.Contains("local")),
UInt16.Parse(_listener.Information.LocalPort));
await _service.RegisterStreamSocketListenerAsync(_listener);
当我在另一台电脑上使用设备观察器时,观察者会找到上述服务的多个实例,并继续将它们命名为用户名(1),用户名(2)等。这是一个错误还是我遗漏了什么?