Android WIFI 应用层框架分析 Android WIFI 应用层框架分析是从应用程序的角度描述 Android WIFI 的工作流程,主要介绍了各个控制接收模块的数据走向,具体数据传输流程和所调用到的方法介绍。本文将从 WIFI 初始化、WIFI 启动、开始扫描 AP、显示扫描的 AP、配置 AP、连接 AP、获取 IP 地址、上网等方面详细分析 Android WIFI 应用层框架。 一、Android WIFI 模块初始化 在 Android 系统启动时,SystemServer 会实例化 ConnectivityService,接着便是 WIFI 初始化。ConnectivityService 的构造函数会创建 WifiService,WifiStateTracker 会创建 WifiMonitor 接收来自底层的事件,WifiService 和 WifiMonitor 是整个模块的核心。WifiService 负责启动关闭 wpa_supplicant、启动关闭 WifiMonitor 监视线程和把命令下发给 wpa_supplicant,而 WifiMonitor 则负责从 wpa_supplicant 接收事件通知。 二、WIFI 模块启动 WirelessSettings 在初始化的时候配置了由 WifiEnabler 来处理 Wifi 按钮,WifiEnabler 会调用 WifiManager 的 setWifiEnabled 接口函数,通过 AIDL,实际调用的是 WifiService 的 setWifiEnabled 函数,WifiService 接着向自身发送一条 MESSAGE_ENABLE_WIFI 消息,在处理该消息的代码中做真正的使能工作。使能工作包括装载 WIFI 内核模块、启动 wpa_supplicant 和启动 WifiMonitor 中的监视线程。 三、WIFI 扫描和配置 在 WIFI 启动后,Android 会扫描可用的 AP,显示扫描的 AP,配置 AP 和连接 AP。扫描 AP 的过程中,Android 会使用 WifiManager 的 startScan 函数来扫描可用的 AP,scanResults 保存扫描结果,WifiConfiguration 保存 AP 的配置信息。在配置 AP 时,Android 会使用 WifiManager 的 setWifiEnabled 函数来配置 AP。在连接 AP 时,Android 会使用 WifiManager 的 connect 函数来连接 AP。 四、WIFI 连接和上网 在连接 AP 后,Android 会获取 IP 地址,并上网。在获取 IP 地址时,Android 会使用 DhcpClient 來获取 IP 地址。在上网时,Android 会使用 HttpUrlConnection 或者 OkHttp 来发送 HTTP 请求。 五、WIFI 应用层框架分析总结 Android WIFI 应用层框架分析是从应用程序的角度描述 Android WIFI 的工作流程,主要介绍了各个控制接收模块的数据走向,具体数据传输流程和所调用到的方法介绍。通过对 WIFI 模块初始化、WIFI 模块启动、WIFI 扫描和配置、WIFI 连接和上网的分析,我们可以更好地理解 Android WIFI 应用层框架的工作机理。


剩余9页未读,继续阅读






















- 粉丝: 0
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 机械CADCAM技术第章.pptx
- 我国网络零售业发展战略研究讲解.doc
- 各种SAR成像算法总结-推荐文档.pdf
- 电子政务整体解决方案——全面构建政府电子信息化工作平台.docx
- 会计信息化发展问题探讨【会计实务操作教程】.pptx
- 电子商务实习简历.docx
- 神经网络感知器.ppt
- 直线段裁剪算法省名师优质课赛课获奖课件市赛课百校联赛优质课一等奖课件.ppt
- 基于单片机住宅防火防盗报警系统毕业设计.docx
- 企业可观测性实施指南
- 游戏开发制作流程分工和薪酬揭秘.doc
- C++图书馆管理系统毕业设计(含源文件).doc
- 网络营销模拟试题2套期末考试卷-AB卷-期末测试卷模拟卷测试题带答案-(1).doc
- 中小学校舍信息管理系统网络版试点方案.doc
- 国际工程项目管理总结.docx
- 机舱软件调试方案.doc



评论4