- Android WIFI架构
目前Android WiFi系统集成了wpa_supplicant,并且以此为核心来链接上层和驱动的接口。
WiFi启动:
- framework层:
Android\framework\opt\net\wifi\service\java\com\android\server\wifi\WifiService.java
WiFiService继承SystemService,系统起来时,SystemService创建ConnectivityService,
然后由ConnectivityService创建WifiService.
WifiService创建又new WifiServiceImpl。
WiFiService又重写了SystemService的接口。
上层通过调用:onBootPhase--> checkAndStartWifi:
(这个函数检查是否已经准备启动WiFi,判断是否需要重新启动系统服务来解密设备,如果已经解密的话,就检查是否需要打开WiFi或设置成enable状态)
WifiSettingsStore 存储WiFi相关的信息:WiFi是否enable,飞行模式
状态机: