阅读(4876)
赞(1)
微信小程序API WIFI
2020-07-23 14:51:24 更新
wx.stopWifi(Object object)
基础库 1.6.0 开始支持,低版本需做兼容处理。
关闭 Wi-Fi 模块。
参数
Object object
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
success | function | 否 | 接口调用成功的回调函数 | |
fail | function | 否 | 接口调用失败的回调函数 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
错误
错误码 | 错误信息 | 说明 |
---|---|---|
0 | ok | 正常 |
12000 | not init | 未先调用 startWifi 接口 |
12001 | system not support | 当前系统不支持相关能力 |
12002 | password error Wi-Fi | 密码错误 |
12003 | connection timeout | 连接超时 |
12004 | duplicate request | 重复连接 Wi-Fi |
12005 | wifi not turned on | Android 特有,未打开 Wi-Fi 开关 |
12006 | gps not turned on | Android 特有,未打开 GPS 定位开关 |
12007 | user denied | 用户拒绝授权链接 Wi-Fi |
12008 | invalid SSID | 无效 SSID |
12009 | system config err | 系统运营商配置拒绝连接 Wi-Fi |
12010 | system internal error | 系统其他错误,需要在 errmsg 打印具体的错误原因 |
12011 | weapp in background | 应用在后台无法配置 Wi-Fi |
12013 | wifi config may be expired | 系统保存的 Wi-Fi 配置过期,建议忘记 Wi-Fi 后重试 |
示例代码
wx.stopWifi({
success (res) {
console.log(res.errMsg)
}
})
wx.startWifi(Object object)
基础库 1.6.0 开始支持,低版本需做兼容处理。
初始化 Wi-Fi 模块。
参数
Object object
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
success | function | 否 | 接口调用成功的回调函数 | |
fail | function | 否 | 接口调用失败的回调函数 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
错误
错误码 | 错误信息 | 说明 |
---|---|---|
0 | ok | 正常 |
12000 | not init | 未先调用 startWifi 接口 |
12001 | system not support | 当前系统不支持相关能力 |
12002 | password error Wi-Fi | 密码错误 |
12003 | connection timeout | 连接超时 |
12004 | duplicate request | 重复连接 Wi-Fi |
12005 | wifi not turned on | Android 特有,未打开 Wi-Fi 开关 |
12006 | gps not turned on | Android 特有,未打开 GPS 定位开关 |
12007 | user denied | 用户拒绝授权链接 Wi-Fi |
12008 | invalid SSID | 无效 SSID |
12009 | system config err | 系统运营商配置拒绝连接 Wi-Fi |
12010 | system internal error | 系统其他错误,需要在 errmsg 打印具体的错误原因 |
12011 | weapp in background | 应用在后台无法配置 Wi-Fi |
12013 | wifi config may be expired | 系统保存的 Wi-Fi 配置过期,建议忘记 Wi-Fi 后重试 |
示例代码
wx.startWifi({
success (res) {
console.log(res.errMsg)
}
})
wx.setWifiList(Object object)
基础库 1.6.0 开始支持,低版本需做兼容处理。
设置 wifiList 中 AP 的相关信息。在 onGetWifiList 回调后调用,iOS特有接口。
参数
Object object
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
wifiList | Array.<Object> | 是 | 提供预设的 Wi-Fi 信息列表 | |
success | function | 否 | 接口调用成功的回调函数 | |
fail | function | 否 | 接口调用失败的回调函数 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
object.wifiList 的结构
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
SSID | string | 否 | Wi-Fi 的 SSID | |
BSSID | string | 否 | Wi-Fi 的 BSSID | |
password | string | 否 | Wi-Fi 设备密码 |
错误
错误码 | 错误信息 | 说明 |
---|---|---|
0 | ok | 正常 |
12000 | not init | 未先调用 startWifi 接口 |
12001 | system not support | 当前系统不支持相关能力 |
12002 | password error Wi-Fi | 密码错误 |
12003 | connection timeout | 连接超时 |
12004 | duplicate request | 重复连接 Wi-Fi |
12005 | wifi not turned on | Android 特有,未打开 Wi-Fi 开关 |
12006 | gps not turned on | Android 特有,未打开 GPS 定位开关 |
12007 | user denied | 用户拒绝授权链接 Wi-Fi |
12008 | invalid SSID | 无效 SSID |
12009 | system config err | 系统运营商配置拒绝连接 Wi-Fi |
12010 | system internal error | 系统其他错误,需要在 errmsg 打印具体的错误原因 |
12011 | weapp in background | 应用在后台无法配置 Wi-Fi |
12013 | wifi config may be expired | 系统保存的 Wi-Fi 配置过期,建议忘记 Wi-Fi 后重试 |
注意
- 该接口只能在 onGetWifiList 回调之后才能调用。
- 此时客户端会挂起,等待小程序设置 Wi-Fi 信息,请务必尽快调用该接口,若无数据请传入一个空数组。
- 有可能随着周边 Wi-Fi 列表的刷新,单个流程内收到多次带有存在重复的 Wi-Fi 列表的回调。
示例代码
wx.onGetWifiList(function(res) {
if (res.wifiList.length) {
wx.setWifiList({
wifiList: [{
SSID: res.wifiList[0].SSID,
BSSID: res.wifiList[0].BSSID,
password: '123456'
}]
})
} else {
wx.setWifiList({
wifiList: []
})
}
})
wx.getWifiList()
wx.onWifiConnected(function callback)
基础库 1.6.0 开始支持,低版本需做兼容处理。
监听连接上 Wi-Fi 的事件
参数
function callback
连接上 Wi-Fi 的事件的回调函数
参数
Object res
属性 | 类型 | 说明 |
---|---|---|
wifi | WifiInfo | Wi-Fi 信息 |
wx.onGetWifiList(function callback)
基础库 1.6.0 开始支持,低版本需做兼容处理。
监听获取到 Wi-Fi 列表数据事件
参数
function callback
获取到 Wi-Fi 列表数据事件的回调函数
参数
Object res
属性 | 类型 | 说明 |
---|---|---|
wifiList | Array.<WifiInfo> | Wi-Fi 列表数据 |
wx.offWifiConnected(function callback)
基础库 2.9.0 开始支持,低版本需做兼容处理。
取消监听连接上 Wi-Fi 的事件。
参数
function callback
连接上 Wi-Fi 的事件的回调函数
wx.offGetWifiList(function callback)
基础库 2.9.0 开始支持,低版本需做兼容处理。
取消监听获取到 Wi-Fi 列表数据事件。
参数
function callback
获取到 Wi-Fi 列表数据事件的回调函数
wx.getWifiList(Object object)
基础库 1.6.0 开始支持,低版本需做兼容处理。
请求获取 Wi-Fi 列表。在 onGetWifiList 注册的回调中返回 wifiList 数据。 Android 调用前需要 用户授权 scope.userLocation。
iOS 将跳转到系统的 Wi-Fi 界面,Android 不会跳转。 iOS 11.0 及 iOS 11.1 两个版本因系统问题,该方法失效。但在 iOS 11.2 中已修复。
参数
Object object
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
success | function | 否 | 接口调用成功的回调函数 | |
fail | function | 否 | 接口调用失败的回调函数 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
错误
错误码 | 错误信息 | 说明 |
---|---|---|
0 | ok | 正常 |
12000 | not init | 未先调用 startWifi 接口 |
12001 | system not support | 当前系统不支持相关能力 |
12002 | password error Wi-Fi | 密码错误 |
12003 | connection timeout | 连接超时 |
12004 | duplicate request | 重复连接 Wi-Fi |
12005 | wifi not turned on | Android 特有,未打开 Wi-Fi 开关 |
12006 | gps not turned on | Android 特有,未打开 GPS 定位开关 |
12007 | user denied | 用户拒绝授权链接 Wi-Fi |
12008 | invalid SSID | 无效 SSID |
12009 | system config err | 系统运营商配置拒绝连接 Wi-Fi |
12010 | system internal error | 系统其他错误,需要在 errmsg 打印具体的错误原因 |
12011 | weapp in background | 应用在后台无法配置 Wi-Fi |
12013 | wifi config may be expired | 系统保存的 Wi-Fi 配置过期,建议忘记 Wi-Fi 后重试 |
wx.getConnectedWifi(Object object)
基础库 1.6.0 开始支持,低版本需做兼容处理。
获取已连接中的 Wi-Fi 信息。
参数
Object object
属性 | 类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
success | function | 否 | 接口调用成功的回调函数 | |
fail | function | 否 | 接口调用失败的回调函数 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
object.success 回调函数
参数
Object res
属性 | 类型 | 说明 |
---|---|---|
wifi | WifiInfo | Wi-Fi 信息 |
错误
错误码 | 错误信息 | 说明 |
---|---|---|
0 | ok | 正常 |
12000 | not init | 未先调用 startWifi 接口 |
12001 | system not support | 当前系统不支持相关能力 |
12002 | password error Wi-Fi | 密码错误 |
12003 | connection timeout | 连接超时 |
12004 | duplicate request | 重复连接 Wi-Fi |
12005 | wifi not turned on | Android 特有,未打开 Wi-Fi 开关 |
12006 | gps not turned on | Android 特有,未打开 GPS 定位开关 |
12007 | user denied | 用户拒绝授权链接 Wi-Fi |
12008 | invalid SSID | 无效 SSID |
12009 | system config err | 系统运营商配置拒绝连接 Wi-Fi |
12010 | system internal error | 系统其他错误,需要在 errmsg 打印具体的错误原因 |
12011 | weapp in background | 应用在后台无法配置 Wi-Fi |
12013 | wifi config may be expired | 系统保存的 Wi-Fi 配置过期,建议忘记 Wi-Fi 后重试 |
wx.connectWifi(Object object)
基础库 1.6.0 开始支持,低版本需做兼容处理。
连接 Wi-Fi。若已知 Wi-Fi 信息,可以直接利用该接口连接。仅 Android 与 iOS 11 以上版本支持。
参数
Object object
属性 | 类型 | 默认值 | 必填 | 说明 | 最低版本 |
---|---|---|---|---|---|
SSID | string | 是 | Wi-Fi 设备 SSID | ||
BSSID | string | 否 | Wi-Fi 设备 BSSID | ||
password | string | 是 | Wi-Fi 设备密码 | ||
maunal | boolean | false | 否 | 跳转到系统设置页进行连接,仅安卓生效 | 2.12.0 |
success | function | 否 | 接口调用成功的回调函数 | ||
fail | function | 否 | 接口调用失败的回调函数 | ||
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
错误
错误码 | 错误信息 | 说明 |
---|---|---|
0 | ok | 正常 |
12000 | not init | 未先调用 startWifi 接口 |
12001 | system not support | 当前系统不支持相关能力 |
12002 | password error Wi-Fi | 密码错误 |
12003 | connection timeout | 连接超时 |
12004 | duplicate request | 重复连接 Wi-Fi |
12005 | wifi not turned on | Android 特有,未打开 Wi-Fi 开关 |
12006 | gps not turned on | Android 特有,未打开 GPS 定位开关 |
12007 | user denied | 用户拒绝授权链接 Wi-Fi |
12008 | invalid SSID | 无效 SSID |
12009 | system config err | 系统运营商配置拒绝连接 Wi-Fi |
12010 | system internal error | 系统其他错误,需要在 errmsg 打印具体的错误原因 |
12011 | weapp in background | 应用在后台无法配置 Wi-Fi |
12013 | wifi config may be expired | 系统保存的 Wi-Fi 配置过期,建议忘记 Wi-Fi 后重试 |
示例代码
wx.connectWifi({
SSID: '',
password: '',
success (res) {
console.log(res.errMsg)
}
})
WifiInfo
Wifi 信息
属性
string SSID
Wi-Fi 的 SSID
string BSSID
Wi-Fi 的 BSSID
boolean secure
Wi-Fi 是否安全
number signalStrength
Wi-Fi 信号强度
number frequency
基础库 2.12.0 开始支持,低版本需做兼容处理。
Wi-Fi 频段单位 MHz