通过iOS 14上的Bonjour发现服务
我无法理解在iOS 14上使用Bonjour进行本地网络服务发现的隐私限制。以下是我的发现:通过iOS 14上的Bonjour发现服务,ios,swift,bonjour,Ios,Swift,Bonjour,我无法理解在iOS 14上使用Bonjour进行本地网络服务发现的隐私限制。以下是我的发现: 使用NetServiceBrowser,我能够通过以下方式发现服务: browser.searchForServices(类型:“\u services.\u dns-sd.\u udp”,inDomain:“local”) 我必须向.plist文件添加几个键,但它可以工作 但是,如果我转到NWBrowser,并尝试运行相同的请求,则会出现错误: 我想,这意味着我需要多播权限 现在的问题是,如果我能使用
browser.searchForServices(类型:“\u services.\u dns-sd.\u udp”,inDomain:“local”)
我必须向.plist文件添加几个键,但它可以工作NWBrowser
,并尝试运行相同的请求,则会出现错误:NetServiceBrowser
而不是NWBrowser
,我为什么要麻烦地向苹果请求多播授权?NetServiceBrowser
是否违背了获取多播授权的目的?根据此错误意味着您向NWBrowser
传递了无效值-很可能是您试图发现的服务的格式
您尚未发布您的NWBrowser
代码,但例如,\u example\u.tcp
等格式错误的服务可能会导致您看到的错误。确保它的格式正确,应该类似于\u示例。\u tcp.
您需要做的另一件事是修改Info.plist文件并添加两个键:
-这是一个数组,第一项应该是您试图发现的服务,在我的示例中,它是Bonjour Services
\u示例。\u tcp.
-在您使用隐私-本地网络使用说明
开始查找时,将向用户显示解释文本NWBrowser
NetServiceBrowser
上使用NWBrowser
?这是一个很好的问题,我也在试图找出答案
nw_browser_fail_on_dns_error_locked [B1] Invalid meta query type specified.
nw_browser_start_dns_browser_locked failed: BadParam(-65540)