NSNetServiceBrowser 未在 iOS 14 上搜索错误 -72008
NSNetServiceBrowser did not search with error -72008 on iOS 14
设置 Multipeer Connectivity(使用 Bonjour)时也会触发同样的错误。我用于启动 Bonjour 浏览和 Multipeer Connectivity 的代码是从 Apple 示例代码修改而来的,并且在 iOS 13.
下运行良好
您需要将以下键添加到 Info.plist:
NSLocalNetworkUsageDescription 和 NSBonjourServices。
例如
<key>NSLocalNetworkUsageDescription</key>
<string>Reason for using Bonjour that the user can understand</string>
<key>NSBonjourServices</key>
<array>
<string>_my-service._tcp</string>
<string>_my-service._udp</string>
</array>
确保 my-service 已根据您的服务名称正确命名。例如。如果您正在为 "foobar" 服务设置 MPC,您可能
mpcAdvertiserAssistant = MCAdvertiserAssistant(serviceType: "foobar", discoveryInfo: discoveryInfoDict, session: mpcSession)
所以你会使用
<string>_foobar._tcp</string>
<string>_foobar._udp</string>
(您可能不需要在您的实施中同时使用 TCP 和 UDP。)
@DDP,我来自你在 GCDWebServer
问题 #525
中的回答。我遇到的问题和你的类似。对我来说,使用真实 iPhone 时无法打开主页。控制台打开服务器成功,浏览器连接不上
我按照您的回答显示添加了以下键,并将 _my-service._tcp
更改为 GCDWebServer
.
中的内容
<key>NSLocalNetworkUsageDescription</key>
<string>Reason for using Bonjour that the user can understand</string>
<key>NSBonjourServices</key>
<array>
<string>_http._tcp</string>
<string>_http._udp</string>
</array>
此更改后,问题已解决。谢谢!
所以这个问题与iOS14的新权限有关to find and connect to devices on your local network.
无论是否授予此权限,我都可以访问Web服务器,很奇怪!
虽然我很好奇你是如何通过调试找到根本原因的。对我来说,Xcode 控制台中没有显示任何 error/additional 信息,我不知道哪里出了问题。
我通过向 Info.plist 添加以下代码解决了这个问题:
<key>NSBonjourServices</key>
<array>
<string>_http._tcp.</string>
</array>
设置 Multipeer Connectivity(使用 Bonjour)时也会触发同样的错误。我用于启动 Bonjour 浏览和 Multipeer Connectivity 的代码是从 Apple 示例代码修改而来的,并且在 iOS 13.
下运行良好您需要将以下键添加到 Info.plist: NSLocalNetworkUsageDescription 和 NSBonjourServices。 例如
<key>NSLocalNetworkUsageDescription</key>
<string>Reason for using Bonjour that the user can understand</string>
<key>NSBonjourServices</key>
<array>
<string>_my-service._tcp</string>
<string>_my-service._udp</string>
</array>
确保 my-service 已根据您的服务名称正确命名。例如。如果您正在为 "foobar" 服务设置 MPC,您可能
mpcAdvertiserAssistant = MCAdvertiserAssistant(serviceType: "foobar", discoveryInfo: discoveryInfoDict, session: mpcSession)
所以你会使用
<string>_foobar._tcp</string>
<string>_foobar._udp</string>
(您可能不需要在您的实施中同时使用 TCP 和 UDP。)
@DDP,我来自你在 GCDWebServer
问题 #525
中的回答。我遇到的问题和你的类似。对我来说,使用真实 iPhone 时无法打开主页。控制台打开服务器成功,浏览器连接不上
我按照您的回答显示添加了以下键,并将 _my-service._tcp
更改为 GCDWebServer
.
<key>NSLocalNetworkUsageDescription</key>
<string>Reason for using Bonjour that the user can understand</string>
<key>NSBonjourServices</key>
<array>
<string>_http._tcp</string>
<string>_http._udp</string>
</array>
此更改后,问题已解决。谢谢!
所以这个问题与iOS14的新权限有关to find and connect to devices on your local network.
无论是否授予此权限,我都可以访问Web服务器,很奇怪!
虽然我很好奇你是如何通过调试找到根本原因的。对我来说,Xcode 控制台中没有显示任何 error/additional 信息,我不知道哪里出了问题。
我通过向 Info.plist 添加以下代码解决了这个问题:
<key>NSBonjourServices</key>
<array>
<string>_http._tcp.</string>
</array>