基于Android的数据传输wifi,毕业设计之 ---基于Android的文件实时传输系统

本文详细介绍了如何开发一个基于Android的文件实时传输系统,利用WiFi P2P技术进行设备间直接连接,包括声明相关权限、注册广播监听、设置服务器和客户端角色、文件完整性校验等关键步骤。
摘要由CSDN通过智能技术生成

基于Android的文件传输系统

开发步骤

在 AndroidManifest 中声明相关权限(网络和文件读写权限)

获取 WifiP2pManager ,注册相关广播监听Wifi直连的状态变化

指定某一台设备为服务器(用来接收文件),创建群组并作为群主存在,在指定端口监听客户端的连接请求,等待客户端发起连接请求以及文件传输请求

客户端(用来发送文件)主动搜索附近的设备,加入到服务器创建的群组,获取服务器的 IP 地址,向其发起文件传输请求

校验文件完整性

设置Android权限

Wifi P2P 技术并不会访问网络,但由于会使用到 Java Socket,所以需要申请网络权限。此外,由于是要实现文件互传,所以也需要申请SD卡读写权限。

"android.permission.CHANGE_NETWORK_STATE" /> "android.permission.INTERNET" /> "android.permission.ACCESS_NETWORK_STATE" /> "android.permission.WRITE_EXTERNAL_STORAGE" /> "android.permission.READ_EXTERNAL_STORAGE" /> "android.permission.ACCESS_WIFI_STATE" /> "android.permission.CHANGE_WIFI_STATE" /> "android.permission.ACCESS_FINE_LOCATION" />

注册广播

与 Wifi P2P 相关的广播有以下几个:

WIFI_P2P_STATE_CHANGED_ACTION( 用于指示 Wifi P2P 是否可用 )

WIFI_P2P_PEERS_CHANGED_ACTION( 对等节点列表发生了变化 )

WIFI_P2P_CONNECTION_CHANGED_ACTION( Wifi P2P 的连接状态发生了改变 )

WIFI_P2P_THIS_DEVICE_CHANGED_ACTION( 本设备的设备信息发生了变化 )

当接收到这几个广播时,我们都需要到 WifiP2pManager (对等网络管理器)来进行相应的信息请求,此外还需要用到 Channel 对象作为请求参数

mWifiP2pManager = (WifiP2pManager) getSystemService(Context.WI

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值