该服务已发布,我可以使用“dns-sd -B”找到它。当我在 iphone(ios 9.2/ios 9.3)上运行我的应用程序时,它每次都可以找到该服务,但它在另一个 iphone(ios 8.4)上不起作用。netServiceBrowserWillSearch 在 searchForServicesOfType 之后被调用,然后它没有给出其他响应;半小时或更长时间后它可能会找到服务,但之后有时它会再次没有任何响应。部分代码:当点击按钮时,启动方法被调用。
- (void) start
{
NSLog(@"start to search service");
if ( _bonjourServiceBrowser != nil ) {
[self stop];
}
_bonjourServiceBrowser = [[NSNetServiceBrowser alloc] init];
[_bonjourServiceBrowser scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
_bonjourServiceBrowser.delegate = self;
[_bonjourServiceBrowser searchForServicesOfType:@"_pp._tcp." inDomain:@"local."];
}
- (void) netServiceBrowser:(NSNetServiceBrowser *)netServiceBrowser
didFindService:(NSNetService *)netService
moreComing:(BOOL)moreServicesComing {
NSLog(@"did found service and service name is : %@ and more %d", netService.name,moreServicesComing);
}
-(void)netServiceBrowser:(NSNetServiceBrowser *)browser didNotSearch:(NSDictionary<NSString *,NSNumber *> *)errorDict {
NSLog(@"not search ");
}
-(void)netServiceBrowserWillSearch:(NSNetServiceBrowser *)browser {
NSLog(@"will search");
}
谁能帮我 ?