无线网络-wifi
描述
WiFi,父对象为device.net,无子对象。系统检测到Wifi模块后会自动连接网络,目前已支持小米usb mini Wifi,海华RT3070/RT5370模块
事件
- state: WiFi连接状态发生变化,事件函数定义:onState(state), state为当前的网络状态,值为"connected"或者"disconnected"
- signalStrength: 已连接的Wifi热点信号强度变化,事件函数定义:onSignalStrength(dbm), dbm是分贝毫瓦,值范围为-90~-30,值越接近0信号强度越大
- scanComplete:WiFi扫描完成,事件函数定义:onScanComplete(), 如果要读取扫描结果可以在onScanComplete方法中调用device.net.wifi.readSsidList()方法
属性
名称 | 功能说明 | 脚本例子 |
---|---|---|
enabled | 使能:如果为true,使能Wifi,否则禁用 | device.net.wifi.enabled=false 禁用Wifi |
dhcpEnabled | 使能DHCP, 默认值是使能 | device.net.wifi.dhcpEnabled=false 禁用DHCP |
ip | IP地址 | device.net.wifi.ip='192.168.1.12' 设置静态IP地址 |
netmask | 子网掩码 | device.net.wifi.netmask='255.255.255.0' 设置子网掩码 |
gateway | 网关 | device.net.wifi.gateway='192.168.1.1' 设置网关 |
verbose | 事件通知:当触发条件满足时,ExpOS主动向串口发送事件消息。仅当选择串口通讯协议为script mode时适用。 | device.net.wifi.verbose=1 设置对象触发的事件有效时向串口发送事件消息 |
hiddenNetwork | 是否为隐藏网络 | device.net.wifi.hiddenNetwork=true 使能为隐藏网络 |
ssid | 网络名称 | device.net.wifi.ssid='Apple' 设置网络名称 |
password | 密码 | device.net.wifi.password='abcd1234' 设置密码 |
方法
名称 | 功能说明 | 脚本例子 |
---|---|---|
isSupported() | 查询Wifi是否支持,返回为布尔值 | var supported = device.net.wifi.isSupported() 查询是否支持 |
isConnected() | 查询是否已连接网络,返回为布尔值 | var connected = device.net.wifi.isConnected() 查询是否已连网 |
getState() | 返回网络状态,值为connected或者disconnected | var state = device.net.wifi.getState() 读取网络状态 |
scan() | 扫描无线网络热点,返回值在onScanComplete()方法中读取 | device.net.wifi.scan() 扫描Wifi热点 |
readSsidList() | 读取扫描结果名称列表,返回为字符串数组,如['aaa', 'bbb', 'ccc'] | var names = device.net.wifi.readSsidList() 读取扫描到的Wifi名称列表 |
connect(ssid, password) | 手动连接指定的热点。连接成功后系统会记住当前热点,重启后会自动连接上次的热点。 | device.net.wifi.connect('Apple', '1234abcd') 连接指定网络热点 |
forget() | 忽略当前网络,重启后不会自动连接上次的热点 | device.net.wifi.forget() 忽略当前网络 |
getSignalStrength() | 获取当前已连接热点的信号强度,单位dbm | var dbm = device.net.wifi.getSignalStrength() 获取信号强度 |