The service has been published and I can find it using "dns-sd -B". When I run my app on iphone(ios 9.2/ios 9.3) it can find the service every time but it doesn't work on another iphone(ios 8.4). netServiceBrowserWillSearch is called after searchForServicesOfType, then it give no other responses;after half an hour or more it maybe find the service but after that sometimes it will give nothing again. some part of code: when click button, start method is called.
- (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");
}
Can anyone help me ?