Android WIFI 架构和控制流程
2012 年 07 月 15 日⁄wi⁄暂 无 评论
一、WIFI 的基本架构
1、wi 用户空间的程序和库:
external/wpa_supplicant/
生成库 libwpaclient.so 和守护进程 wpa_supplicant
2、hardware/libhardware_legary/wi/是 wi 管理库
3、JNI 部分:
frameworks/base/core/jni/android_net_wi_Wi.cpp
4、JAVA 部分:
frameworks/base/services/java/com/android/server/
frameworks/base/wi/java/android/net/wi/
5、WIFI Settings 应用程序位于:
packages/apps/Settings/src/com/android/settings/wi/
6、WIFI 驱动模块wlan.ko
wpa_supplicant 通过 wireless_ext 接口和驱动通信
7、WIFI 硬件模块
二、WIFI 在 Android 中如何工作
Android 使用一个修改版 wpa_supplicant 作为 daemon 来控制 WIFI,代码位于
external/wpa_supplicant。wpa_supplicant 是通过 socket
与 hardware/libhardware_legacy/wi/wi.c 通信。UI 通过android.net.wi
package(frameworks/base/wi/java/android/net/wi/)发送命令给 wi.c。相应的 JNI
实现位于 frameworks/base/core/jni/android_net_wi_Wi.cpp。更高一级的网络管理位
于frameworks/base/core/java/android/net。
三、配置 Android 支持 WIFI
在 BoardCong.mk 中添加:
BOARD_HAVE_WIFI := true
评论0
最新资源