haas506 2.0开发教程-高级组件库-wifi
最新案例教程点击下方链接跳转,CSDN已停止更新
点
击
跳
转
1.wifiScan
案例说明:
- wifiScan函数库的简单使用,了解一下各个函数的作用。
main.py
import wifiScan
#查看平台是否支持wifi扫描
ret1=wifiScan.support()
print("ret1=",ret1)
#查看wifi开启状态
ret2=wifiScan.getState()
print("ret2=",ret2)
#获取wifi扫描参数
ret3=wifiScan.getConfig()
print("ret3=",ret3)
#开启wifi扫描
ret4=wifiScan.control(1)
print("ret4=",ret4)
#设置wifi扫描参数(timeout, round, max_bssid_num, scan_timeout, priority)
ret5=wifiScan.setConfig(5, 3, 5, 60, 0)
print("ret5=",ret5)
#开始扫描wifi
ret6=wifiScan.start()
print("ret6=",ret6)
日志输出
ret1= True
ret2= False
ret3= (0, 0, 0, 0, 0)
ret4= 0
[1638540479.424]<D>modwifiscan timeout:5
[1638540479.425]<D>modwifiscan round:3
[1638540479.425]<D>modwifiscan max_bssid_num:5
[1638540479.425]<D>modwifiscan scan_timeout:60
[1638540479.425]<D>modwifiscan priority:0
ret5= 0
ret6= (5, ['92:DE:F9:EC:D3:40', 14, 'A8:A7:95:99:D8:47', -54, '8C:DE:F9:EC:D3:40', -49, '9A:00:6A:B3:4B:AC', -59,
'98:00:6A:B3:4B:AC', -59])
2.Class-wifiScan
wifiScan
support | control | getState | getConfig | setConfig | start | setCallback |
---|---|---|---|---|---|---|
判断当前平台是否支持wifiScan功能 | 控制开启或者关闭wifiScan功能 | 获取当前平台wifiScan的状态,是开启还是关闭 | 获取 wifiScan配置参数 | 配置wifiScan参数 | wifiScan扫描 | 注册用户回调函数 |
wifiScan.support()
作用:判断当前平台是否支持wifiScan功能
参数:无
返回:支持返回True,不支持返回False
wifiScan.control(option)
作用:控制开启或者关闭wifiScan功能
参数:option
返回:执行成功返回整型0
参数 | 类型 | 说明 |
---|---|---|
option | 整型 | 0/1 : 关闭/开启wifiscan 功能 |
wifiScan.getState()
作用:获取当前平台wifiScan的状态,是开启还是关闭
参数:无
返回:wifiScan 功能已开启返回 True,功能未开启返回 False
wifiScan.getConfig()
作用:获取 wifiScan 功能配置参数
参数:无
返回:成功返回一个元组,失败返回整型 -1,返回元组形式如下:(timeout, round, max_bssid_num,scan_timeout, priority)
返回值 | 类型 | 说明 |
---|---|---|
timeout | 整型 | 该超时时间参数是上层应用的超时,当触发超时会主动上报已扫描到的热点信息,若在超时前扫描到设置的热点个数或达到底层扫频超时时间会自动上报热点信息。该参数设置范围为4-255秒 |
round | 整型 | 该参数是Wi-Fi扫描轮,达到扫描轮数后,会结束扫描并获取扫描结果。该参数设置范围为1-3轮次 |
max_bssid_num | 整型 | 该参数是Wi-Fi扫描热点最大个,若底层扫描热点个数达到设置的最大个数,会结束扫描并获取扫描结果。该参数设置范围为4-30个 |
scan_timeout | 整型 | 该参数是底层Wi-Fi扫描热点超时时间,若底层扫描热点时间达到设置的超时时间,会结束扫描并获取扫描结果。该参数设置范围为1-255秒 |
priority | 整型 | 该参数是Wi-Fi扫描业务优先级设置,0为ps优先,1为Wi-Fi优先。ps优先时,当有数据业务发起时会中断Wi-Fi扫描。Wi-Fi优先时,当有数据业务发起时,不会建立RRC连接,保障Wi-Fi扫描正常执行,扫描结束后才会建立RRC连接 |
wifiScan.setConfig(timeout, round, max_bssid_num, scan_timeout,
priority)
作用:设置 wifiScan 功能配置参数
参数:timeout, round, max_bssid_num, scan_timeout, priority
返回:成功返回整型0
返回值 | 类型 | 说明 |
---|---|---|
timeout | 整型 | 该超时时间参数是上层应用的超时,当触发超时会主动上报已扫描到的热点信息,若在超时前扫描到设置的热点个数或达到底层扫频超时时间会自动上报热点信息。该参数设置范围为4-255秒 |
round | 整型 | 该参数是Wi-Fi扫描轮,达到扫描轮数后,会结束扫描并获取扫描结果。该参数设置范围为1-3轮次 |
max_bssid_num | 整型 | 该参数是Wi-Fi扫描热点最大个,若底层扫描热点个数达到设置的最大个数,会结束扫描并获取扫描结果。该参数设置范围为4-30个 |
scan_timeout | 整型 | 该参数是底层Wi-Fi扫描热点超时时间,若底层扫描热点时间达到设置的超时时间,会结束扫描并获取扫描结果。该参数设置范围为1-255秒 |
priority | 整型 | 该参数是Wi-Fi扫描业务优先级设置,0为ps优先,1为Wi-Fi优先。ps优先时,当有数据业务发起时会中断Wi-Fi扫描。Wi-Fi优先时,当有数据业务发起时,不会建立RRC连接,保障Wi-Fi扫描正常执行,扫描结束后才会建立RRC连接 |
wifiScan.start()
作用:开始 wifiScan扫描功能,扫描结束后直接返回扫描结果,由于是同步接口,所以扫描未结束时,程序会阻塞在该接口中,阻塞时间一般在0 ~ 2秒
参数:无
返回:成功返回扫描结果,失败或者错误返回整型-1。成功时返回值形式如下:(wifi_nums, [(mac, rssi), … ,(mac, rssi)])
返回值 | 类型 | 说明 |
---|---|---|
wifi_nums | 整型 | 搜索到的WiFi数量 |
mac | 字符串 | 无线接入点的MAC地址 |
rssi | 整型 | 信号强度 |
wifiScan.setCallback(usrFun)
作用:注册用户回调函数。当用户使用异步接口扫描时,需要注册回调函数,扫描结果通过回调函数返回给用户
参数:usrFun
返回:注册成功返回整型0
参数 | 类型 | 说明 |
---|---|---|
usrFun | function | 用户回调函数 |
3.总结
本节介绍了如何使用haas506高级组件库中的wifiScan模块,实现了周围wifi热点的扫描,获取wifi热点的mac地址和rssi值。