You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用NWBrowser查询Bonjour服务时遭遇PolicyDenied错误的排查求助

NWBrowser查询Bonjour服务时遭遇PolicyDenied错误的排查求助

各位好,我遇到了一个Bonjour服务搜索的棘手问题,想请教大家的排查思路:

之前我一直用NetServiceBrowser成功搜索特定类型的Bonjour服务(服务类型为_my-service._udp),Info.plist里也一直配置了NSBonjourServices数组包含这个服务类型,一切正常。但最近突然失效了,而且没有任何错误提示,我不确定是因为把iOS模拟器从iOS 16升级到iOS 18导致的,还是其他因素影响(我的项目目标版本始终是iOS 15)。

因为NetServiceBrowser已经被废弃,我转而用NWBrowser来调试,这次终于得到了明确的错误信息:

[browser] nw_browser_fail_on_dns_error_locked [B1] nw_browser_dns_service_browse_callback failed: PolicyDenied(-65570)

查了一些资料后,我尝试了两个之前没用到的配置(因为之前没这些配置也能正常工作):

  • 在Info.plist中添加了NSLocalNetworkUsageDescription键,描述内容为"This app searches for my service server"
  • 新增了一个.entitlements文件,添加com.apple.developer.networking.multicast并设为<true/>

但操作后还是出现同样的PolicyDenied错误,而且NWBrowser启动时,完全没有弹出请求本地网络访问权限的弹窗。

我的开发环境是:

  • XCode 16.4
  • macOS 15.5

有没有朋友遇到过类似的情况?或者有什么我没考虑到的排查方向?麻烦大家给点建议,谢谢!

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.07 13:04:32