我正在申请一个。为此,我正在使用NsNetservice
发布服务,并使用NSNetserviceBrowser
浏览。但是有时服务会成功发布服务,但是浏览器无法使用didFindservice
委托方法找到该服务。仅netServiceBrowserWillSearch
正在触发,didNotsearch
委托方法也未触发。而且,如果我重新启动设备,则它可以正常工作。
请帮助我解决此问题。有关浏览器和服务的代码,请在下面检查
浏览器:
self.browser = [[NSNetServiceBrowser alloc] init];
self.browser.includesPeerToPeer = YES;
[self.browser setDelegate:self];
[self.browser searchForServicesOfType:[NSString stringWithFormat:@"%@%@._tcp.",serviceName,Name] inDomain:@""];
服务:
self.netService = [[NSNetService alloc] initWithDomain:@"" type:[NSString stringWithFormat:@"%@%@._tcp.",serviceName,Name] name:Name port:randomPortNumber];
self.netService.includesPeerToPeer = YES;
[self.netService setDelegate:self];
[self.netService scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[self.netService publishWithOptions:NSNetServiceListenForConnections];