1

過接続NSNetServiceBrowserを見つけるためNSNetServiceに使用しています。今、私のコードはほぼ毎回動作します。しかし、たまに (10 回に 1 回)見つけられないか、見つけるのに非常に時間がかかります。Apple TVbonjourNSNetServiceBrowserNSNetServiceApple TV

NSNetServiceBrowserが を検出できなくなったらApple TV、 を再起動する必要がApple TVあり、再びすべてが正常に機能し始めます。

何が問題なのか、再起動するとどのようにApple TV解決するのか理解できません。そのため、問題を特定するためのガイダンスや提案を探しています。

Apple TV のコード:

service = [[NSNetService alloc] initWithDomain:@"" type:@"_test._tcp" name:@"TV ZohoShow" port:0];
[service scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
service.includesPeerToPeer = YES;
if(service)
{
    [service setDelegate:self];
    [service publishWithOptions:NSNetServiceListenForConnections];

}

iOS デバイスのコード:

[serviceBrowser scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
serviceBrowser.includesPeerToPeer = YES;
[serviceBrowser setDelegate:self];
[serviceBrowser searchForServicesOfType:@"_test._tcp" inDomain:@""];

更新: 2 つの iOS デバイス間の接続を試みても、決して起こりません。その場合、100/100回接続できます。しかし、Apple TV を導入するとすぐに、テレビが見つからない機会が増え始めます。

4

0 に答える 0