android.net.wifi

wifi相關的文件位置:

WIFI Settings應用程序位於

       packages/apps/Settings/src/com/android/settings/wifi/

JAVA部分:

        frameworks/base/services/java/com/android/server/

        frameworks/base/wifi/java/android/net/wifi/

JNI部分:

       frameworks/base/core/jni/android_net_wifi_Wifi.cpp

wifi管理庫。

        hardware/libhardware_legary/wifi/

 wifi用戶空間的程序和庫:

        external/wpa_supplicant/

 

       生成庫libwpaclient.so和守護進程wpa_supplicant。

 

 

WifiManager:提供了管理WiFI連接的大部分API

ScanResult:已經檢測出的接入點(包括接入點的地址、名稱、身份認證、頻率、信號強度)

WifiConfiguration:WiFi連接的網絡配置(包括安全配置等)

WifiInfo:WiFI無線連接的描述(包括接入點、網絡連接狀態、隱藏的接入點、IP地址、連接速度、MAC地址、網絡ID、信號強度等等)

WifiManager.WifiLock:允許應用程序一直使用WiFI無線網絡,通常情況下當用戶在一段時間內沒有任何操作的時候,WiFi網絡會自動關閉。我們使用WifiLock來鎖定WiFi網絡,使其一直保持連接,直到這個鎖被釋放。多個應用程序可能有多個鎖,當多有的應用程序的鎖都被釋放的時候,WiFi才被關閉。

WifiStateTracker 會創建 WifiMonitor 接收來自底層的事件, WifiService 和 WifiMonitor 是整個模塊的核心。WifiService 負責啓動關閉 wpa_supplicant、啓動關閉 WifiMonitor 監視線程和把命令下發給 wpa_supplicant,而 WifiMonitor 則負責從 wpa_supplicant 接收事件通知。

也就是說WifiService負責wifi整個流程的控制,而WifiMonitor負責監視底層的事件。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章