菜鸟教程小白 发表于 2022-12-12 23:11:31

objective-c - NSNetService 的 TXTRecordData 解析后为零


                                            <p><p>所以,这是我的问题:我的 iOS 应用正在通过本地网络宣传 NSNetService,服务发现运行良好。我也知道我需要先解决我的服务,然后才能读取它的 TXTRecordData。在服务的 -didPublish 委托(delegate)方法中,我确保我的 TXTRecordData 设置了 NSDictionary。到目前为止,一切都很好......</p>

<pre><code>- (void)netServiceBrowser:(NSNetServiceBrowser *)aNetServiceBrowser
         didFindService:(NSNetService *)aNetService
               moreComing:(BOOL)moreComing
{
    if (!self.netServicesForResolution)
      self.netServicesForResolution = [ init];

    NSLog(@&#34;serviceBrowser found service: %@, with TXTRecordData: %@&#34;,
          aNetService, aNetService.TXTRecordData);
    ;
    if (!moreComing) ;
}

- (void)resolveNetServicesInArray
{
    for (NSNetService *service in self.netServicesForResolution) {
      service.delegate = self;
      ;
    }
}

- (void)netServiceDidResolveAddress:(NSNetService *)sender
{
    ;
    NSString *dataDict = ;
    NSLog(@&#34;freshly resolved netService has TXTRecordData: %@&#34;, dataDict);
}
</code></pre>

<p>如果调用 -netServiceDidResolveAdress 方法,则应用程序崩溃,因为 sender.TXTRecordData 为 nil。但是为什么是零呢?</p>

<p>提前感谢您的任何回答:D</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>TXT 记录数据似乎与“服务可用”通知不同。在我的 netServiceBrowser:didFindService:moreComing: 方法中,我确认传入的 NSNetService 有一个空的 TXT 记录,即使我在发布之前附加了一条 TXT 记录,但后来我收到了一个 netService:didUpdateTXTRecordData: 调用。 </p></p>
                                   
                                                <p style="font-size: 20px;">关于objective-c - NSNetService 的 TXTRecordData 解析后为零,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/12923647/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/12923647/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: objective-c - NSNetService 的 TXTRecordData 解析后为零