Wi‑Fi
onWifiConnected
TIP
該API使用方法為: wx.onWifiConnected(function listener)
TIP
支持度:
- Android: 支持
- iOS: 支持
- 功能說明: 監聽連接上Wi-Fi的事件
- 參數及說明: function listener,連接上Wi-Fi的事件的監聽函數,參數Object res如下:
内容 類型 說明 wifi WifiInfo Wi-Fi資訊
offWifiConnected
TIP
該API使用方法為: wx.offWifiConnected(function listener)
功能說明: 移除連接上Wi-Fi的事件的監聽函數
參數及說明: function listener,onWifiConnected傳入的監聽函數。 不傳此參數則移除所有監聽函數
示例代碼:
js
const listener = function (res) { console.log(res) }
wx.onWifiConnected(listener)
wx.offWifiConnected(listener) // Pass the same function object used for listening.stopWifi
TIP
該API使用方法為: wx.stopWifi(Object object)
功能說明: 關閉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 連接超時,僅Android支持 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後重試,僅Android支持 12014 invalid WEP / WPA password iOS特有,無效的WEP / WPA密碼 示例代碼:
js
wx.stopWifi({
success (res) {
console.log(res.errMsg)
}
})startWifi
TIP
該API使用方法為: wx.startWifi(Object object)
功能說明: 初始化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 連接超時,僅Android支持 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後重試,僅Android支持 12014 invalid WEP / WPA password iOS特有,無效的WEP / WPA密碼 示例代碼:
js
wx.startWifi({
success (res) {
console.log(res.errMsg)
}
})onGetWifiList
TIP
該API使用方法為: wx.onGetWifiList(function listener)
- 功能說明: 監聽獲取到Wi-Fi清單數據事件
- 參數及說明: function listener,獲取到Wi-Fi清單數據事件的監聽函數。 參數Object res如下:
内容 類型 說明 wifiList Array.<WifiInfo> Wi-Fi清單數據
offGetWifiList
TIP
該API使用方法為: wx.offGetWifiList(function listener)
功能說明: 移除獲取到Wi-Fi清單數據事件的監聽函數
參數及說明: function listener,onGetWifiList傳入的監聽函數。 不傳此參數則移除所有監聽函數
示例代碼:
js
const listener = function (res) { console.log(res) }
wx.onGetWifiList(listener)
wx.offGetWifiList(listener) // Pass the same function object used for listening.getConnectedWifi
TIP
該API使用方法為: wx.getConnectedWifi(Object object)
功能說明: 獲取已連接中的Wi-Fi資訊
參數及說明: Object object。
内容 類型 預設值 必填 說明 partialInfo boolean false 否 是否需要返回部分Wi-Fi資訊 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 連接超時,僅Android支持 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後重試,僅Android支持 12014 invalid WEP / WPA password iOS特有,無效的WEP / WPA密碼
WifiInfo
- 功能說明: Wifi資訊
TIP
- Android wx.connectWifi / wx.getConnectedWifi若設定了partialInfo: true, 或者調用了wx.onWifiConnectedWithPartialInfo事件,將會返回只包含SSID内容的WifiInfo對象。
- iOS wx.getConnectedWifi若設定了partialInfo: true, 將會返回只包含SSID、BSSID内容的WifiInfo對象,且需要用戶開啟宿主用戶端定位許可權才能正確返回結果
- 在某些情况下,可能Wi-Fi已經連接成功,但會因為獲取不到完整的WifiInfo對象報錯,具體錯誤資訊為errCode:12010, errMsg: can't gain current wifi或no wifi is connected,如果開發者不需要完整的WifiInfo對象,則可以通過採取上述策略解决報錯問題
内容
- string SSID: Wi-Fi的SSID
- string BSSID: Wi-Fi的BSSID
- boolean secure: Wi-Fi是否安全
- number signalStrength: Wi-Fi信號強度,Android取值0~100,iOS取值0~1,值越大强度越大
- number frequency: Wi-Fi頻段單位MHz