android6.0 wifi流程,[RK3288][Android6.0] WiFi之从Linkspeed看获取流程

Platform: Rockchip

OS: Android 6.0

Kernel: 3.10.92

WiFi的(Link speed)连接速度可以从Settings里查看

e3136e72368af34d6b2ec732b7ac1d02.png

从连接速度来看下获取WiFi信息的流程

public int getLinkSpeed() {

return mLinkSpeed;

}

mLinkSpeed在fetchRssiLinkSpeedAndFrequencyNative()得到

fetchRssiLinkSpeedAndFrequencyNative -> WifiStateMachine.java

mWifiNative.signalPoll  ->

doStringCommandWithoutLogging -> //cmd: SIGNAL_POLL

doStringCommandNative -> //通过socket发给WPAS处理

android_net_wifi_doStringCommand ->

doStringCommand ->

wpa_supplicant_ctrl_iface_receive -> Ctrl_iface_unix.c //WPAS端socket接收处理函数

wpa_supplicant_ctrl_iface_process -> Ctrl_iface.c

wpa_supplicant_signal_poll ->

wpa_drv_signal_poll ->

wpa_s->driver->signal_poll ->

nl80211_signal_poll -> Driver_nl80211.c

nl80211_get_link_signal ->

nl80211_drv_msg //msg的flag是NL80211_CMD_GET_STATION

send_and_recv_msgs -> //通过netlink发送给kernel driver,回调函数是get_link_signal(),用来解析收到的packet

nl80211_get_station ->  nl80211.c //driver中对应的操作函数集在nl80211_ops中,这里是nl80211_get_station

rdev_get_station ->

rdev->ops->get_station ->

wl_cfg80211_get_station -> Wl_cfg80211.c

wldev_ioctl //cmd是WLC_GET_RATE

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值