小程序扫码连wifi怎么实现

  • 时间:
  • 来源: 网络

小程序扫码连wifi是很常见的功能,只要你在贴有二维码的地方扫描即可连接wifi,那么这种方式要如何实现呢?

饭店,商铺存在共享的wifi的地方,只需要贴出二维码,用户扫描后自动连接。

小程序缺点:android6版本ios11版本

图片演示

//pages/wifi/wifi.js

Page({

data:{

startError:'',//初始化错误提示

wifiListError:false,//wifi列表错误显示开关

wifiListErrorInfo:'',//wifi列表错误详细

system:'',//版本号

platform:'',//系统android

ssid:'wifi帐号',//wifi帐号(必填)

pass:'wifi密码',//无线网密码(必填)

bssid:'',//设备号自动获取

endError:''//连接最后的提示

},

onLoad:function(){

var_this=this;

//检测手机型号

wx.getSystemInfo({

success:function(res){

varsystem='';

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:'手机版本暂时不支持'});return

}

if(res.platform=='ios'&&system<11){

_this.setData({startError:'手机版本暂时不支持'});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){

//安卓执行方法

if(_this.data.platform=='android'){

//请求获取Wi-Fi列表

wx.getWifiList({

success:function(res){

//安卓执行方法

_this.AndroidList(_this);

},

fail:function(res){

_this.setData({wifiListError:true});

_this.setData({wifiListErrorInfo:res.errMsg});

}

})

}

//IOS执行方法

if(_this.data.platform=='ios'){

_this.IosList(_this);

}

},

AndroidList:function(_this){

//监听获取到Wi-Fi列表数据

wx.onGetWifiList(function(res){//获取列表

if(res.wifiList.length){

//_this.setData({

//wifiList:res.wifiList

//});

//循环找出信号最好的那一个(wifi存在多个)

varssid=_this.data.ssid;

varsignalStrength=0;

varbssid='';

for(vari=0;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:'未查询到设置的wifi'});

return

}

_this.setData({bssid:bssid});

//执行连接方法

//连接wifi

_this.Connected(_this);

}else{

_this.setData({wifiListError:true});

_this.setData({wifiListErrorInfo:'未查询到设置的wifi'});

微商好助手小程序工具提供多类型商城/门店小程序制作,可视化编辑1秒生成5步上线。通过拖拽、拼接模块布局小程序商城页面,所看即所得,只需要美工就能做出精美商城。

更多小程序开发案例,尽在:

价值1980元火爆的0基础小程序制作开发赚钱训练营免费看