0

该服务已发布,我可以使用“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");
}

谁能帮我 ?

4

0 回答 0