同样的错误也会触发建立多点连接(它使用Bonjour)。我用来启动Bonjour浏览和多点连接的代码是从苹果示例代码中修改的,并且在iOS 13下工作得很好。
发布于 2020-12-07 21:59:04
您需要将以下键添加到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>确保“我的服务”以您的服务名称命名正确。例如,如果您正在为"foobar"服务设置MPC,则可能有
mpcAdvertiserAssistant = MCAdvertiserAssistant(serviceType: "foobar", discoveryInfo: discoveryInfoDict, session: mpcSession)所以你会用
<string>_foobar._tcp</string>
<string>_foobar._udp</string>(您的实现中可能不需要TCP和UDP。)
发布于 2021-03-17 07:13:47
我通过将下面的代码添加到Info.plist中来解决这个问题:
<key>NSBonjourServices</key>
<array>
<string>_http._tcp.</string>
</array>发布于 2020-12-14 12:41:03
@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>在这一变化之后,问题就解决了。谢谢!
所以这个问题是与iOS 14 to find and connect to devices on your local network.的新权限相关的,无论是授予还是未授予这个权限,我都可以访问web服务器,这太奇怪了!
尽管我很好奇您如何调试才能找到根本原因。对我来说,Xcode控制台中没有显示任何错误/附加信息,我对哪里出错没有任何线索。
https://stackoverflow.com/questions/65190065
复制相似问题