我在 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);
当我在另一台电脑上使用设备观察程序时,观察程序会找到上述服务的多个实例,并继续将它们命名为 Username(1)、Username(2) 等。这是一个错误还是我遗漏了什么?