小程序掃碼連wifi如何實(shí)現(xiàn)
小程序掃碼連wifi是很常見的功能,只要你在貼有二維碼的地方掃描即可連接wifi,那么這種方式要如何實(shí)現(xiàn)呢?
飯店,商鋪存在共享的wifi的地方,只需要貼出二維碼,用戶掃描后自動連接。
小程序 缺點(diǎn):android6版本 ios11版本
圖片演示
// pages/wifi/wifi.js
Page({
data: {
startError: '',//初始化錯誤提示
wifiListError: false, //wifi列表錯誤顯示開關(guān)
wifiListErrorInfo: '',//wifi列表錯誤詳細(xì)
system: '', //版本號
platform: '', //系統(tǒng) android
ssid: 'wifi帳號',//wifi帳號(必填)
pass: 'wifi密碼',//無線網(wǎng)密碼(必填)
bssid: '',//設(shè)備號 自動獲取
endError: ''//連接最后的提示
},
onLoad: function () {
var _this = this;
//檢測手機(jī)型號
wx.getSystemInfo({
success: function (res) {
var system = '';
if (res.platform == 'android') system = parseInt(res.system.substr(8));
if (res.platform == 'ios') system = parseInt(res.system.substr(4));
if (res.platform == 'android' && system < 6) {
_this.setData({ startError: '手機(jī)版本暫時不支持' }); return
}
if (res.platform == 'ios' && system < 11) {
_this.setData({ startError: '手機(jī)版本暫時不支持' }); return
}
_this.setData({ platform: res.platform });
//初始化 Wi-Fi 模塊
_this.startWifi(_this);
}
})
},//初始化 Wi-Fi 模塊。
startWifi: function (_this) {
wx.startWifi({
success: function () {
_this.getList(_this);
},
fail: function (res) {
_this.setData({ startError: res.errMsg });
}
})
},
getList: function (_this) {
//安卓執(zhí)行方法
if (_this.data.platform == 'android') {
//請求獲取 Wi-Fi 列表
wx.getWifiList({
success: function (res) {
//安卓執(zhí)行方法
_this.AndroidList(_this);
},
fail: function (res) {
_this.setData({ wifiListError: true });
_this.setData({ wifiListErrorInfo: res.errMsg });
}
})
}
//IOS執(zhí)行方法
if (_this.data.platform == 'ios') {
_this.IosList(_this);
}
},
AndroidList: function (_this) {
//監(jiān)聽獲取到 Wi-Fi 列表數(shù)據(jù)
wx.onGetWifiList(function (res) { //獲取列表
if (res.wifiList.length) {
// _this.setData({
// wifiList: res.wifiList
// });
//循環(huán)找出信號最好的那一個(wifi存在多個)
var ssid = _this.data.ssid;
var signalStrength = 0;
var bssid = '';
for (var i = 0; i < res.wifiList.length; i++) {
if (res.wifiList[i]['SSID'] == ssid && res.wifiList[i]['signalStrength'] > signalStrength) {
bssid = res.wifiList[i]['BSSID'];
signalStrength = res.wifiList[i]['signalStrength'];
}
}
if (!signalStrength) {
_this.setData({ wifiListError: true });
_this.setData({ wifiListErrorInfo: '未查詢到設(shè)置的wifi' });
return
}
_this.setData({ bssid: bssid });
//執(zhí)行連接方法
//連接wifi
_this.Connected(_this);
} else {
_this.setData({ wifiListError: true });
_this.setData({ wifiListErrorInfo: '未查詢到設(shè)置的wifi' });
HiShop小程序工具提供多類型商城/門店小程序制作,可視化編輯 1秒生成5步上線。通過拖拽、拼接模塊布局小程序商城頁面,所看即所得,只需要美工就能做出精美商城。