Android利用WifiDirect实现文件传输功能

news/2024/10/28 22:34:41/

最近需要实现一个使用手机WiFi传输文件的功能,最后是使用WiFiDirect实现了这个功能。

什么是WiFiDirect?

下面是WiFi官方给出的解释:

Wi-Fi CERTIFIED Wi-Fi Direct®是一种认证标志,表示设备间支持Wi-Fi直接互联,帮助用户以更为简单而便捷的方式完成打印、共享、同步和显示等任务。带有Wi-Fi Direct标志的产品可以在不加入传统的家庭、办公或热点网络的情况下互相连接。

利用这种技术,手机、照相机、打印机、个人电脑和游戏设备将能够直接互连,以迅速而轻松的方式传输内容、共享应用。Wi-Fi Direct可以支持一对一直连,也可以实现多台设备同时连接。连接Wi-Fi Direct认证设备的操作简单方便,按下按钮、同时点击两个支持NFC的设备,或输入PIN码这三种方法均可实现连接。此外,所有的Wi-Fi Direct连接都采用WPA2™加密方式,这是Wi-Fi最新的安全技术。通过Wi-Fi Direct,您无需接入点或互联网连接,便可在任何地方享受个人Wi-Fi网络。

可以知道,这是一种可以使设备之间直接连接的技术,这种连接不依赖路由器,同时也不影响当前设备与路由器的连接。

优点:

1.连接方便

2.传输速率快

缺点:

1.耗电量大

从优缺点可以看出,可以认为它类似于蓝牙,但是传输速率更快,耗电量更大。


关于如何实现,这里上传一个Demo,是根据Google的WifiDirect官方Demo稍作修改,也添加了一些注释,希望能帮到大家。

WiFiDirect文件传输



http://www.ppmy.cn/news/737097.html

相关文章

802.11ac 速率 + 信道 + 国家码信道

转载 802.11a/b/g/n/ac速率表_802.11 速率表_406不速之客的博客-CSDN博客 1、802.11b,最高速率11Mbps 调制方式 速率(Mbps) DSSS 1 DSSS 2 CCK 5.5 CCK 11 2、802.11a/g,最高速率54Mbps 调制方式 码率 速率&#xf…

android beam传输速率,被吊打7年之后,安卓这个功能终于追上了iOS

[PConline 杂谈] 在我们编辑部,常常会出现这样的对话: “那个谁,把Geekbench安装包发一下到这台新机。” “等我下个QQ,再登个小号”,或者,“那你在新机上装个快牙,我发给你” 显然,…

Kali Linux渗透测试——无线渗透

笔记内容参考安全牛课堂苑房弘老师的Kali Linux渗透测试教程,以及文章: https://blog.csdn.net/qq_38265137/article/details/80370554 https://blog.csdn.net/lee244868149/article/details/52691266 文章目录 一、基本概念(一)I…

无线ad服务器有必要吗,11ad无线路由器来了!但建议等等再买

原标题:11ad无线路由器来了!但建议等等再买 在刚刚结束的CES2016大会上,(号称)全球首款11ad无线路由器率先亮相,其最大的特点就是可以提供7Gbps的无线传输速率!那么什么是802.11ad技术呢?简单来说&#xff…

无线传输技术

1 Wi-Fi 的话,不适合扩展为智能家居层面上的控制协议。家庭用户的路由器基本都是最普通的路由器,当有10个以上的设备接入路由的时候,路由器根本承受不了这样的负担。通俗一点来说,设备越多,Wi-Fi 都可能连不上了。 2 …

day 42 01背包

01背包裸题 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。 每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。 二维数组 dp含义: dp[ i ][ j ] 表示从下标为 [ 0 - i ]的物品里…

前端实战——尚品汇(网页开发)

/* 基础设置 */ .container {width: 1190px;margin: 0 auto; } /* #region顶部导航条start */ .topbar {height: 30px;background-color: #ececec; } .welcome {height: 30px;line-height: 30px;font-size: 0;color: #666; } .welcome span,.welcome a {font-size: 12px; } .we…

《C++ Primer》--学习12

动态内存 动态内存与智能指针 除了静态内存和栈内存,每个程序还拥有一个内存池。这部分内存被称为自由空间 或 堆,程序用堆来存储动态分配的对象 动态内存和智能指针 智能指针负责自动释放所指向的对象 shared_ptr 类 智能指针也是模板