SwiftSocket在发送时从UDPClient收到未知错误

时间:2018-08-26 23:27:01

标签: swift macos sockets networking udp

我正在尝试使用SwiftSockets将数据从Mac发送到iPhone。

当我尝试以下代码时

  var socket = UDPClient(address: "192.168.1.158", port: 20777)

  override func viewDidLoad() {
    super.viewDidLoad()
    let res = socket.send(data: [255])
    print(res.error.debugDescription)
  }

我收到消息Optional(SwiftSocket.SocketError.unknownError),但没有收到来自iPhone的任何数据。

问题是什么,我该如何解决?

编辑:如果我尝试使用设备的主机名,则会收到以下消息

2018-08-27 01:28:01.893463+0100 App Name[863:10545] dnssd_clientstub ConnectToServer: connect()-> No of tries: 1
2018-08-27 01:28:02.894593+0100 App Name[863:10545] dnssd_clientstub ConnectToServer: connect()-> No of tries: 2
2018-08-27 01:28:03.894872+0100 App Name[863:10545] dnssd_clientstub ConnectToServer: connect()-> No of tries: 3
2018-08-27 01:28:04.895240+0100 App Name[863:10545] dnssd_clientstub ConnectToServer: connect() failed path:/var/run/mDNSResponder Socket:4 Err:-1 Errno:1 Operation not permitted

1 个答案:

答案 0 :(得分:1)

我从评论切换到答案以添加图片...

首先,从文档和原始资料中,他们使用主机名而不是IP地址,可以在路由器信息客户端下或在iPhone的“常规-信息-名称”下找到主机名。

然后错误消息似乎是功能问题。

转到功能,然后在App Sandbox下检查是否首先启用了该功能,然后像图中所示检查Network Incoming and Outcoming Connections

enter image description here