博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1wifi 简介(框架)
阅读量:6897 次
发布时间:2019-06-27

本文共 2447 字,大约阅读时间需要 8 分钟。

hot3.png

一、wifi 组建原理:

        WIFI就是一种无线联网的技术,以前通过网线连接电脑,而现在则是通过无线电波来连网;常见的就是一个无线路由器,那么在这个无线路由器的电波覆盖的有效范围都可以采用WIFI连接方式进行联网,如果无线路由器连接了一条ADSL线路或者别的上网线路,则又被称为“热点”。

        一般架设无线网络的基本配备就是 无线网卡 及 一个AP(无线接入点)。有了AP,就像一般有线网络的Hub一般,无线工作站可以快速且轻易地与网络相连。特别是对于宽带的使用,WiFi更显优势,有线宽带网络(ADSL、小区LAN等)到户后,连接到一个AP,然后在电脑中安装一块无线网卡即可上网。普通的家庭有一个AP已经足够,甚至用户的邻里得到授权后,则无需增加端口,也能以共享的方式上网。

二、=================== android WIFI 框架 =======================

---------------------------------------------------------------------------------------------------

三、 Android平台Wifi 编译前 基本代码 路径 及 文件名(根文件系统的源码下)

1、Wifi setting 部分(Java应用层)

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

WifiSettings.java&WifiEnabler.java

2、JAVA Framework部分

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

WifiService.java &WifiWatchdogService.java

位于frameworks/base/wifi/java/android/net/wifi/

WifiManager.java&WifiMonitoer.java&WifiStateTracker.java &WifiNative.java

3.       Wifi的JNI部分

位于 frameworks/base/core/jni/android_net_wifi_Wifi.cpp

4.       Wifi的HAL层代码(wpa_supplicant适配器层)

位于 hardware/libhardware_legary/wifi/wifi.c

5.       Wpa_supplicant程序的 源码部分(tools)

位于 external/wpa_supplicant_6/

external/wpa_supplicant/

生成库libwpa_client.so 和 守护进程wpa_supplicant
6.kernel (wifi 驱动*.ko)
位于 net/wireless     drivers/wlan_sd8688       arch/arm/mach-pxa/wlan_pm.c

四、每一层 编译后 的所在位置

Java应用层

  -- Settings, Wifi Switcher等应用

  --> /system/app/

Java Framework层  

    --> 

        /system/framework/services.jar

JNI层  

  --> /system/framework/framework.jar

wpa_supplicant 适配器层

    --> /system/lib/libhardware_legacy.so

wpa_supplicant 程序

    --> /system/bin/wpa_supplicant

        /system/lib/libwpa_client.so

Kernel层

  -- kernel network drivers  

===================== android WIFI 框架 end ====================================

Wifi 网卡状态

1.    WIFI_STATE_DISABLED: WIFI网卡不可用

2.    WIFI_STATE_DISABLING: WIFI正在关闭

3.    WIFI_STATE_ENABLED:WIFI网卡可用

4.    WIFI_STATE_ENABLING:WIFI网卡正在打开

5.    WIFI_STATE_UNKNOWN:未知网卡状态

Rootfs中 关于wpa_supplicant的配置

1) /device/amlogic/f08refe1/BoardConfig.mk  //wpa_supplicant版本,driver
WPA_SUPPLICANT_VERSION := VER_0_6_X
BOARD_WPA_SUPPLICANT_DRIVER := WEXT
2) root/init.rc   //wpa_supplicant service
setprop wifi.interface wlan0
service wpa_supplicant /system/bin/wpa_supplicant -Dwext -iwlan0 -d -c /data/misc/wifi/wpa_supplicant.conf
    socket wpa_wlan0 dgram 0666 wifi wifi
3) /system/etc/wifi/wpa_supplicant.conf//config for wpa_supplicant service
update_config=1
ctrl_interface=wlan0
eapol_version=1
ap_scan=1
fast_reauth=1

---------------------

转载于:https://my.oschina.net/u/994235/blog/135310

你可能感兴趣的文章
【Python之旅】第六篇(一):Paramiko模块使用演示
查看>>
NuSOAP webservice接口
查看>>
[Angularjs]视图和路由(三)
查看>>
好文收藏系列(三)
查看>>
PHP生成静态HTML的技术原理
查看>>
《C程序设计的抽象思维》1.9编程练习
查看>>
【日常小记】内存分配方式及常见错误
查看>>
linux sort,uniq,cut,wc命令详解
查看>>
ORACLE opatch命令学习实践
查看>>
The j.u.c Synchronizer Framework翻译(二)设计与实现
查看>>
jbpm5.1介绍(4)
查看>>
flash开发框架:RobotLegs
查看>>
Redis笔记(七)Java实现Redis消息队列
查看>>
【spring框架】模拟Spring框架(涉及Jdom的使用)
查看>>
gnuradio之flowgraph和top_block
查看>>
【JavaScript】JavaScript的对象-在函数中修改参数值的问题
查看>>
Java IO流学习总结
查看>>
Android 随笔——Android必须知道的注解Annotations
查看>>
hadoop之旅3-centerOS7: 搭建hadoop免密集群启动
查看>>
Webpack系列-tapable
查看>>