项目涉及到扫描特定wifi名(SSID)前缀,用户选中列表中wifi热点后,自动连接该名称的wifi。因此设计为三个工具类,一个用来扫描特定wifi名前缀的扫描工具类WifiScanner,一个根据SSID连接wifi的连接工具类WifiConnector,以及一个提供对外统一接口配置了扫描和连接信息的管理工具类WifiManager。
扫描
扫描的流程为:检测是否打开WIFI(未打开需打开)–> 注册扫描监听广播 –> 开启循环扫描线程(设置超时时间)–> 收到扫描结果广播 –> 处理结果(根据特定wifi名过滤wifi)–> 取消广播监听、扫描任务 –> 返回过滤后的结果
连接
连接的流程为:开启连接线程 –> 注册客户端wifi状态改变广播 –> 根据ssid、密码、安全模式连接wifi –> 返回wifi连接结果 –> 取消广播监听
管理
|
|
权限
在Manifest.xml中配置相应权限