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

项目实路

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

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


图片演示


实现代码(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


作者:大智如蠢
出处:cnblogs.com/phper8
声明:本文来源于网络,版权归作者所有,不代表本专栏观点,有什么问题请联系我,谢谢!
### 回答1: 微信小程序扫码连接Wi-Fi项目免费码源是指此项目需要一个免费的码源,以便用户可以在小程序中扫描二维码连接Wi-Fi网络,而不需要输入Wi-Fi账号和密码。在这种情况下,码源是指该二维码的信息源,其中包含网络名称、密码以及其他必要的信息。 为了提供一个免费的码源,业主可以选择使用开源解决方案,例如OpenWRT或dd-wrt。用户可以安装软件包,然后将二维码配置为使用特定的解决方案。这样,用户只需打开微信小程序,扫描二维码即可自动连接到Wi-Fi。 同时,也可以利用一些在线工具来制作和生成二维码,例如QR Code Generator或QR Code Monkey。这些工具可以让用户自定义需要显示的Wi-Fi信息,并将其转换为二维码格式。 总之,免费的码源是使微信小程序扫码连接Wi-Fi项目更加便利和高效的重要组成部分,允许用户轻松访问可靠的Wi-Fi网络。 ### 回答2: 微信小程序扫码连接wifi项目是一项非常实用的功能,它可以帮助用户快速连接到Wi-Fi网络,节省用户的时间和流量费用。不过,扫码连接wifi功能需要借助第三方平台提供的免费或付费码源,才能实现。为了方便用户和开发者使用这项功能,目前已经有多家第三方厂商提供了免费的码源。这些码源可以通过一些网站或平台下载,也可以直接向提供商申请,获得使用权限后即可在微信小程序中使用。 其中一家比较知名的免费码源提供商是gswifi,该公司提供了多款可供选择的码源,包括访客Wi-Fi、商家免费上网等不同类型的码源。只要用户注册账号并申请免费使用权,就可以在微信小程序中使用这些免费码源,实现扫码连接wifi的功能。此外,还有一些其他的免费或付费码源提供商,例如WeChat Wi-Fi、Wi-Fi Go等,也可供用户选择使用。 总之,使用微信小程序扫码连接wifi功能需要借助第三方提供的码源,现在有多家免费或付费的码源可供选择。如果用户需要使用这项功能,可以通过一些网站或平台下载码源,或向提供商申请获得使用权限。这样,用户就可以享受便捷的WiFi连接服务了。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值