当前位置: 代码迷 >> QT开发 >> 请问Qt的网络知识
  详细解决方案

请问Qt的网络知识

热度:110   发布时间:2016-04-25 03:13:19.0
请教Qt的网络知识!
有两个无线终端设备连接到路由上面——我想通过发送命令去控制B终端,在A终端怎么获取B终端的IP和端口信息——例如:小米手机有个APP,它是怎么连接和控制电视的,它应该要获取电视的IP信息的吧,?
------解决方案--------------------
与 Qt 无关!鉴定完毕。

其实这是 upnp / wifi - direct / dlna / airplay / WiMo 之类的多屏互动协议干的事情。
------解决方案--------------------
1.和Qt无关。
2.使用无线路由互联设备,就是使用TCP/IP协议,对于Qt就是建立socket套接字,使用tcp或者udp协议传输数据,协议payload部分自己设计。
3.端口号是tcp或udp端口号,不用单独获取。
4.得到对端ip的方法有两种:
    1)利用域名解析,使用域名访问对端设备。缺点是需要访问公网,优点是可以公网访问。
    2)既然是接入同一个路由器,理论上自动分配的ip地址同属一个网段。利用这个条件找到对端设备ip的方法就很多了。
------解决方案--------------------
我的做法是在程序启动的时候立刻发送udp广播,告诉局域网中其它设备有新设备加入。
在已启动的设备中处理接收到的udp广播信息。这个udp包可以根据需要打包。
------解决方案--------------------
服务器监听,客户端连接后就可以知道ip和端口了
  相关解决方案