十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
p2p 技术,可以让具备相应硬件的 Android 4.0(API 级别 14) 或更高版本设备在没有中间接入点的情况下,通过 wlan 进行直接互联。使用这些 api ,您可以实现支持 wlan p2p 的设备间相互发现和连接,从而获得比蓝牙连接更远距离的高速连接通信效果。对于多人游戏或照片共享等需要在用户之间共享数据的应用而言,这一技术非常有用。
创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于网站制作、成都网站设计、达日网络推广、微信小程序开发、达日网络营销、达日企业策划、达日品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联建站为所有大学生创业者提供达日建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
一个设备上可以有多个 p2p 服务存在,通过 addLocalService 可以在设备上发布自己的 p2p 服务,通过 removeLocalService 可以移除自己的 p2p 服务
serviceName 是服务的名字,可以自定义,这里设置为 DON_TEST
serviceType 是服务类型,格式为 _protocol._transportlayer ,表示协议+传输类型。
例如:
p2p 设备信息及连接状态的变化,需要通过监听系统广播来实现,常用到的广播有以下几个:
通过方法 discoverPeers 可搜索设备周围的p2p设备
discoverPeers 会触发广播 WifiP2pManager.WIFI_P2P_PEERS_CHANGED_ACTION ,收到此广播后,通过方法 requestPeers 可获取周边 p2p 设备列表
通过 一、服务发布 ,发布了一个名为 DON_TEST 的服务,通过 discoverServices 方法就可以搜索到这个服务,同时需要通过 setDnsSdResponseListeners 方法设置监听 WifiP2pManager.DnsSdServiceResponseListener 和 WifiP2pManager.DnsSdTxtRecordListener ,在搜索过程中这两个监听会回调搜索到的服务信息。
WifiP2pManager.DnsSdServiceResponseListener 用于监听搜索到的服务信息
WifiP2pManager.DnsSdTxtRecordListener 用于获取服务发布携带的额外信息,例如 一、服务发布 中的携带的信息 port 8888
通过 WifiP2pManager.DnsSdServiceResponseListener 可以搜索到可用的服务信息,通过方法 onDnsSdServiceAvailable 中的参数 WifiP2pDevice 可获取到服务所在的设备信息,通过 connect 方法可以连接该设备
connect 调用成功之后,如果是首次连接,对端手机会显示一个弹窗,用户选择允许连接之后,两部手机手机才能建立连接。
建立连接之后,系统会发送广播 WifiP2pManager.WIFI_P2P_CONNECTION_CHANGED_ACTION ,收到这个广播之后,可通过 requestConnectionInfo 方法获取连接信息 WifiP2pInfo ,通过 WifiP2pInfo 可获取对方的 ip
连接到了一起,此时系统会自动创建一个群组 (Group) 并随机指定一台设备为群主 (GroupOwner) 。此时,对于两台设备来说,群主的 IP 地址是可知的(系统回调函数中有提供),但客户端的 IP 地址需要再来通过其他方法来主动获取。
可以通过创建群组,指定某台设备作为服务器端(群主),即指定某台设备用来接收文件,因此,服务器端要主动创建群组,并等待客户端的连接。
server端
客户端
在两部手机通过 p2p 连接之后,客户端传输文件到服务端
参考:
[img]p2p可能不能实现实时播放。因为p2p是分段传输的,有可能你传输了尾部的一段视频,前面的视频段还没穿,造成播放卡顿。
要是实时传输,还是两台电脑之间通过udp协议直接传的好。
或者给p2p加上限制,视频段必须按顺序传播。
说实话我不太看得懂你的意思。
如果你说的是获取别人手机上的视频并边下载边播放的话,那么udp协议传输文件即可。
如果你说的是获取别人正在录制的视频并播放的话,那么有点类似视频通话,两个端口同步传输图像和文件,还是用udp协议。
所以我不知道你为什么要纠结于p2p?
一、下载并安装p2p种子搜索器。
安卓版下载地址:
IOS版下载地址:
二、安装后开始使用本软件。
1、进入主界面即可看到“软件”项目里包含百度云、手机迅雷、迅雷影音等常用云点播工具。
2、进入搜索界面,搜索后,即可显示文件大小、格式信息。
3、选择搜索到的种子进入详情页面,“拷贝”选项支持将链接地址拷贝到剪贴板;“播放”选项支持云点播
4、点击云播放即显示下面的示意图,欢迎体验。
1、注册用户((Openfire服务器),已搭建好服务器。
2、好友添加(不用分组,在聊天界面直接显示添加的好友)
3、P2P聊天(文字功能)
4、保存查看聊天记录:用户可查看与好友的聊天记录信息
5、好友上下线自动刷新各自头像列表,点击头像进入聊天界面
6、demo要支持android手机、7寸平板和10平板.