纵有疾风起
人生不言弃

微信小程序-实现扫码自动连接wifi(android)

项目实路

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

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

图片演示

微信小程序-实现扫码自动连接wifi(android)插图
微信小程序-实现扫码自动连接wifi(android)插图1

实现代码(IOS没看懂文档说明 只简单的带过 希望能实现的朋友@我一下)

// 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) {        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: '手机版本暂时不支持' }); 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存在多个) 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: '未查询到设置的wifi' });          return        }        _this.setData({ bssid: bssid });        //执行连接方法 //连接wifi         _this.Connected(_this);      } else {        _this.setData({ wifiListError: true });        _this.setData({ wifiListErrorInfo: '未查询到设置的wifi' });      }    })  },  IosList: function (_this) {    _this.setData({ wifiListError: true });    _this.setData({ wifiListErrorInfo: 'IOS暂不支持' });  },//连接wifi  Connected: function (_this) {    wx.connectWifi({      SSID: _this.data.ssid,      BSSID: _this.data.bssid,      password: _this.data.pass,      success: function (res) {        _this.setData({ endError: 'wifi连接成功' });      },      fail: function (res) {        _this.setData({ endError: res.errMsg });      }    })  }})

demo下载

wifi.zip

注意:project.config.json修改成你的APPID

作者:大智如蠢
出处:http://www.cnblogs.com/phper8
声明:本文来源于网络,版权归作者所有,不代表本专栏观点,有什么问题请联系我,谢谢!

文章转载于:https://www.jianshu.com/p/7ccf8a2a1249

原著是一个有趣的人,若有侵权,请通知删除

未经允许不得转载:起风网 » 微信小程序-实现扫码自动连接wifi(android)
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录