iPhone上的SSDP

Mag*_*ave 7 iphone udp upnp cfnetwork ssdp

我需要能够发送一个UDP消息,还收到一个以发现从iPhone网络上的SSDP设备.

我知道我需要将数据包发送到多播地址,我的HTTP请求需要看起来像这样:

M-SEARCH * HTTP/1.1
Host: 239.255.255.250:1900
Man: ssdp:discover
Mx: 3
ST: "urn:schemas-upnp-org:device:InternetGatewayDevice:1"
Run Code Online (Sandbox Code Playgroud)

从阅读的文档,似乎我能做到这一切与CFNetwork的,尽管阅读(并重新读取文档)我奋力上手.任何人都可以推荐和教程或代码片段让我超过最初的学习驼峰吗?

我有CFNetwork编程指南:

http://developer.apple.com/mac/library/documentation/Networking/Conceptual/CFNetwork/CFNetwork.pdf

和Beej的网络编程指南使用互联网套接字:

http://beej.us/guide/bgnet/

谢谢

戴夫

PS

在这种情况下,我无法使用任何第三方库和框架.

Mag*_*ave 2

好的,终于搞定了。在公共领域找到了一个名为 AsyncUdpSocket 的类(感谢 Chris),它可以让您创建一个 UDP 套接字,然后您可以打开广播并加入多播地址。

有一个很好的 sendData 方法,可以添加到运行循环中以防止阻塞。

希望有帮助。

戴夫