我想在安卓上利用Wi-Fi构建一个数据共享应用,就像“SHAREit”一样,但我不知道从哪里开始。
因此,如果有人能为我清晰解释“SHAREit”的技术概念,那将非常高效易懂。
- 当我们想要发送一个文件时,我们可以看到可用的接收设备的名称。
- 名称是显示为SSID还是其他?
- 我们如何广播名称和其他信息以在发送方设备上显示?
- 当我选择一个设备来发送文件时会发生什么?
- 我可以使用哪个API?它是用于什么的?请简单地解释。
请提供所有测试资源和链接。
我想在安卓上利用Wi-Fi构建一个数据共享应用,就像“SHAREit”一样,但我不知道从哪里开始。
因此,如果有人能为我清晰解释“SHAREit”的技术概念,那将非常高效易懂。
请提供所有测试资源和链接。
HotspotController
由于Android没有可用的API来启用/禁用热点,因此HC使用Java反射。其功能包括:
控制器创建一个开放式Wifi热点配置,其中包含可以被接收者拦截以识别SHAREthem发送方的SSID、端口和发送方名称。
在禁用共享模式时还原用户的热点配置。
提供已连接WiFi客户端的列表。
SHAREthem Server
一个微型HTTP服务器,扩展自NanoHttpd,使用IP地址作为主机名向接收者提供发送者数据,并默认使用用户或系统分配的端口。
SHAREthem Service
管理SHAREthem服务器的生命周期,并处理前台通知与停止操作的Android服务。
UI(活动)
处理共享/接收操作的Android活动
接收器 - 提供列出可下载文件的UI。将下载请求发布至Android下载管理器以开始文件下载。
发送器 - 显示IP、端口和已连接客户端(接收器)的信息,以及每个已连接客户端的文件传输状态。