gpt4 book ai didi

cocoa - netServiceBrowser DidStop 搜索未调用

转载 作者:行者123 更新时间:2023-12-03 18:05:32 25 4
gpt4 key购买 nike

我现在正在编写一个Bonjour服务监听器类,根据文档here:

目前,它似乎有效,我可以正确接收“netServiceBrowserWillSearch:”和“didFindService:moreComing:”。然而,经过漫长的等待,我无法收到“netServiceBrowserDidStopSearch:”或“netServiceBrowser:didNotSearch:”。因此,我不知道我的委托(delegate)类现在是停止显示某些 UI 的适当时间。

有人对此有什么想法吗?谢谢。

最佳答案

NSNetServiceBrowser 不会停止浏览(并调用 -netServiceBrowserDidStopSearch: 委托(delegate)方法),除非您通过调用 -stop 明确告知它。找到初始服务后,当新的匹配服务添加或旧服务消失时,它会继续通知您。

您如何处理此问题取决于您希望应用程序的行为方式。如果您有一个持续显示可用服务的窗口(例如 iChat 中的 Bonjour 窗口),那么最好让它继续,并不断更新列表以响应委托(delegate)消息。如果您有一个更像是填充的对话框,然后在用户做出选择后消失(例如,像系统“添加打印机...”对话框),那么您希望在显示时保持浏览器运行,然后调用 -stop 一旦用户关闭它。如果您只是等待查找一项特定服务,那么您可以在找到并解决该服务后调用 -stop

关于cocoa - netServiceBrowser DidStop 搜索未调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2696049/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com