一开始用Bonjour,我是拒绝的。
让我们以一个问题开头:如何能在本地网络找到自己想要的硬件设备及相应服务,并连接?...PS: 你可能会好奇这些请求和解析是通过什么进行的,在这里为了避免加入过多底层网络细节导致混淆,我只会悄悄的告诉你,背后是通过mDNS协议来进行的。...解析名字:
如果有用户发出一个查询,说我想找名字叫"Mango's iPhone7"的设备,则本地网络收到请求的设备看看自己是不是被请求了,如果是的话,则返回正确的IP地址,端口。
?...Bonjour帮助我们,只需指定所需服务的类型即可收到本地网络上可用的设备列表。
实现原理:
设备在本地网络发出请求,说我需要"XXX"类型的服务,例如:我要打印机服务。...API级别:
?
我们直接使用抽象最高级的NSNetService,NSNetServiceBrowser来解决问题。
NSNetService代表一个服务。