阅读更多 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 接收事件通知。

具体流程图如下:

Android Wifi模块分析(二)_第1张图片

 

更多相关文章

  1. Android Wifi模块分析(三)
  2. Android开发:Activity初始化时屏蔽EditText的自动获取焦点的事件
  3. [android]在上下文菜单的选中事件中获取列表选中的元素
  4. Android解决父控件拦截子控件手势滑动事件的问题
  5. android touch事件解析
  6. android中MotionEvent.ACTION_CANCEL事件如何被触发?
  7. android studio的问题整理(如何删除模块(Module))
  8. Android 中与 Touch 事件分发和消费机制
  9. Windows环境下Android 源码模块下载

随机推荐

  1. Android(安卓)用 RecyclerView 实现倒计
  2. Android中程序乱码问题解决
  3. Android(安卓)FileUtil
  4. AudioFormat音频格式
  5. Android(安卓)View深入学习(一),View的测量(M
  6. AndroidStudio2.2-2.3安装不了anko-plugi
  7. 如何把应用跑在android上
  8. Android(安卓)getSystemService用法实例
  9. Android开发环境安装
  10. Android(安卓)View事件传递详解