阅读更多 Android Wifi模块分析(二) 本文来自: http://hi.baidu.com/anly_jun/blog/item/6bfb3e45256c1b2dcefca375.html 2010-02-04 10:51

二:Wifi模块的初始化::

在 SystemServer 启动的时候,会生成一个ConnectivityService 的实例,


try {
Log.i(TAG, "Starting Connectivity Service.");
ServiceManager.addService(Context.CONNECTIVITY_SERVICE, new
ConnectivityService(context));
} catch (Throwable e) {
Log.e(TAG, "Failure starting Connectivity Service", e);
}


ConnectivityService 的构造函数会创建WifiService,

if (DBG) Log.v(TAG, "Starting Wifi Service.");
mWifiStateTracker = new WifiStateTracker(context, handler);
WifiService wifiService = new WifiService(context, mWifiStateTracker);
ServiceManager.addService(Context.WIFI_SERVICE, wifiService);


WifiStateTracker 会创建WifiMonitor 接收来自底层的事件,WifiService 和WifiMonitor 是整
个模块的核心。WifiService 负责启动关闭wpa_supplicant、启动关闭WifiMonitor 监视线程
和把命令下发给wpa_supplicant,而WifiMonitor 则负责从wpa_supplicant 接收事件通知。

具体流程图如下:


 

更多相关文章

  1. Android调用系统短信发送界面并预设接收号码、短信内容
  2. Android(安卓)Wifi模块分析(三)
  3. Android(安卓)Activity的启动
  4. Android架构分析之使用自定义硬件抽象层(HAL)模块
  5. Android(安卓)任务和回退堆栈---启动任务
  6. Android——Activity四种启动模式
  7. 修复Android(安卓)App在开机后入口类被启动两次的bug
  8. android手机客户端上传文件,java servlet服务器端接收并保存到服
  9. android 命令(adb shell)进入指定模拟器或设备

随机推荐

  1. android 中遥控器键值的添加和修改
  2. Android(安卓)Studio 使用笔记(1) -- 设置
  3. Android中LocationManager的简单使用,获
  4. Application Fundamentals
  5. Android定制RadioButton样式三种实现方法
  6. Android快速实现发送邮件
  7. Unity加入Android广告小结
  8. ActivityManagerService解读之Activity启
  9. Android(安卓)图形系统剖析
  10. Android(安卓)ContentProvider、ContentR