次のコードを使用して、バックグラウンド アプリで NSNetService (「My_Mac」という名前) を IP に解決しようとしています。
NSNetService *service = [[NSNetService alloc] initWithDomain:@"local." type:@"_daap._tcp" name:@"My_Mac"];
[service setDelegate:self];
[service resolveWithTimeout:5];
同じクラスで、次のデリゲート メソッドを定義しています。
- (void)netServiceDidResolveAddress:(NSNetService *)sender
- (void)netService:(NSNetService *)sender didNotResolve:(NSDictionary *)errorDict
ここに奇妙な部分があります: "[service resolveWithTimeout:5];" の後に NSAlert を実行しない限り、どちらのデリゲート メソッドも呼び出されません。何か案は?