1

我正在使用 NSNetServices 进行简单的 bonjour 广播。当我在应用程序启动/退出时开始和停止 bonjour 共享时,一切都运行良好。但是,如果我使用 stop 方法调用关闭 bonjour,即使在调用 netServiceDidStop: 委托消息后,我的应用程序似乎仍然在广播死服务,这会阻止服务重新启动,直到重新启动应用程序之后。Apple的文档使它看起来非常简单,只需根据需要发布或停止......我错过了什么吗?

4

1 回答 1

0

似乎有时即使服务不再可用,也会显示服务。

来自 Apple 文档:

因为未能显示有效服务对用户来说比显示陈旧服务更大的问题,所以 Bonjour 故意错误地假设服务仍然可用。

.

.

虽然 Bonjour 通常会在几秒钟内发现新服务,但如果服务消失,则可能直到您的应用程序尝试连接它并且没有得到响应时才发现该服务的消失。

您不应该仅仅因为 Bonjour API 报告发现的服务,就可以保证该服务在软件尝试访问它时可用。

连接和监控网络服务:解析失败时

于 2013-05-08T19:36:37.030 回答