系列文章目录

第一章 国内下载AOSP最新源码的方法
第二章 下载AOSP WiFi相关的代码
第三章 将源码导入Android Studio(无需编译idegen)


文章目录

  • 系列文章目录
  • 前言
  • 一、Wi-Fi扫描是什么?
  • 二、Wi-Fi扫描过程
    • 1. 打开Wi-Fi后扫描流程
    • 2. 不同场景下的扫描过程
    • 3. service与wificond交互类图
  • 总结

前言

Wifi扫描热点


一、Wi-Fi扫描是什么?

Wifi扫描在没有wificond服务之前都是由wpa_supplicant下扫描指令给wlan驱动,驱动触发固件扫描上层设下去的信道,扫描完成后扫描结果由wlan驱动通过netlink发送给wpa_supplicant,wpa_supplicant然后通过回调上层设下来的监听器将结果传到framework里面的Wi-Fi服务,上层在扫描到热点后应用获取扫描结果显示出来,供用户点击后连接,当发现某个保存了的热点扫描到后会自动连接。在Android P后开始有wificond这个服务,里面有些过程都是wificond来控制。

二、Wi-Fi扫描过程

1. 打开Wi-Fi后扫描流程

暂时没时间详细写这个过程,找到了下面一篇讲的比较详细的,在此感谢博主:
Android P WiFi扫描流程详解

2. 不同场景下的扫描过程

描场景可以归结为以下四种:

1、 亮屏情况下,在Wifi settings界面,固定扫描,时间间隔为10s。
2、 亮屏情况下,非Wifi settings界面,二进制指数退避扫描,退避:interval*(2^n), 最小间隔min=20s, 最大间隔max=160s.
3、 灭屏情况下,有保存网络时,若已连接,不扫描,否则,PNO扫描,即只扫描已保存的网络。最小间隔min=20s,最大间隔max=20s*3=60s
4、 无保存网络情况下,固定扫描,间隔为5分钟,用于通知用户周围存在可用开放网络。

暂时没时间详细写这个过程,找到了下面一篇讲的比较详细的,在此感谢博主:
Android Wi-Fi扫描机制(Android P)

3. service与wificond交互类图

可以参考下面这篇博客:
添service与wificond交互类图


总结

这部分等后续有空再补充完整。

第六章 Wi-Fi扫描流程相关推荐

  1. Kali Linux 网络扫描秘籍 第六章 拒绝服务(二)

    第六章 拒绝服务(二) 作者:Justin Hutchens 译者:飞龙 协议:CC BY-NC-SA 4.0 6.6 NTP 放大 DoS 攻击 NTP 放大 DoS 攻击利用响应远程 monlis ...

  2. Kali Linux 网络扫描秘籍 第六章 拒绝服务(一)

    第六章 拒绝服务(一) 作者:Justin Hutchens 译者:飞龙 协议:CC BY-NC-SA 4.0 任何时候,当你通过互联网访问公开资源,甚至通过内部网络访问小型社区时,重要的是要考虑拒绝 ...

  3. 【 第六章 拦截器,注解配置springMVC,springMVC执行流程】

    第六章 拦截器,注解配置springMVC,springMVC执行流程 1.拦截器: ①springMVC中的拦截器用于拦截控制器方法的执行. ②springMVC的拦截器需要实现HandlerInt ...

  4. 【正点原子FPGA连载】第六章Petalinux设计流程实战摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Linux开发指南

    1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=692450874670 3)全套实验源码+手册+视频下载地址: h ...

  5. 【正点原子FPGA连载】第十六章Petalinux设计流程实战摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Linux开发指南

    1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=692450874670 3)全套实验源码+手册+视频下载地址: h ...

  6. 鸟哥的Linux私房菜(基础篇)- 第十六章、例行性工作排程 (crontab)

    第十六章.例行性工作排程 (crontab) 最近升级日期:2009/09/11 学习了基础篇也一阵子了,你会发现到为什么系统常常会主动的进行一些任务?这些任务到底是谁在配置工作的?如果你想要让自己设 ...

  7. 机器学习理论《统计学习方法》学习笔记:第六章 逻辑斯谛回归与最大熵模型

    机器学习理论<统计学习方法>学习笔记:第六章 逻辑斯谛回归与最大熵模型 6 逻辑斯谛回归与最大熵模型 6.1 逻辑斯谛回归模型 6.1.1 逻辑斯谛分布 6.1.2 二项逻辑斯蒂回归模型 ...

  8. Kali Linux 网络扫描秘籍 第七章 Web 应用扫描(三)

    第七章 Web 应用扫描(三) 作者:Justin Hutchens 译者:飞龙 协议:CC BY-NC-SA 4.0 7.13 使用 BurpSuite Sequencer(序列器) Web 应用会 ...

  9. 第六章 输入输出系统-作业

    第六章 输入输出系统 1.试说明I/O系统的基本功能. 答: (1)隐藏物理设备的细节 (2)与设备的无关性 (3)提高处理机和I/O设备的利用率 (4)对I/O设备进行控制 (5)确保对设备的正确共 ...

最新文章

  1. postergresql mysql_PosttgreSQL快速入门:PostgreSQL的安装和配置
  2. 错误:不允许有匹配 [xX][mM][lL] 的处理指令目标。
  3. 基于docker容器下mongodb 4.0.0 的Replica Sets+Sharded Cluster集群
  4. Path(1)vrep中的贝塞尔点、控制点的简单区分
  5. jquery 设置select的默认值
  6. 【硬核科技】转行AI,从零出发
  7. 腾讯云 mysql 密码_腾讯云mysql重新设置密码解决办法
  8. 比量iOS6/iOS7, 3.5inch/4.0inch
  9. 2012年3月份工作总结 ~ 之 ~ PDF 作业对应 (虽然这个作业没有什么意思,但是非常值得总结)
  10. 自动驾驶高精地图-概述与分析
  11. IDEA配置TeaVM插件
  12. RLS算法Matlab实现
  13. unity蛮牛游戏API
  14. 计算机基础是五笔吗,计算机基础(五笔打字学习).ppt
  15. Ubuntu下,curl 安装
  16. matlabGUI入门
  17. eNSP初学者配置以太网2种链路端口:access、trunk
  18. Android Car - 开机画面
  19. 有读者认为,直接去点p结点会造成断链
  20. 【Linux】【开发环境】【RHEL】开发环境搭建系列之四——安装daytime服务

热门文章

  1. 关于福昕阅读器启动速度慢的问题
  2. OpenGL编程轻松入门之使用颜色
  3. Spring框架下载最新地址
  4. 图形学(4)多边形的扫描转换(上)
  5. 转载:群联MPALL(Rel) 7F V5.03.0A-DL07量产工具 PS2251-07(PS2307)
  6. RS导出Excel交叉表角对应的列占用多列问题
  7. vue 生命周期-activated
  8. MySQL No compatible servers were found.You’ll need to cancel this wizard and install one
  9. sqlserver数据库练习3
  10. 知识贴:电子面单与传统面单的区别