小程序模板網(wǎng)

微信小程序-實現(xiàn)掃碼自動連接wifi(android)

發(fā)布時間:2018-05-05 15:15 所屬欄目:小程序開發(fā)教程

項目實路

飯店,商鋪存在共享的wifi的地方,只需要貼出二維碼,用戶掃描后自動連接

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

圖片演示

實現(xiàn)代碼(IOS沒看懂文檔說明 只簡單的帶過 希望能實現(xiàn)的朋友@我一下)

 

  1. // pages/wifi/wifi.js
  2. Page({
  3. data: {
  4. startError: '',//初始化錯誤提示
  5. wifiListError: false, //wifi列表錯誤顯示開關(guān)
  6. wifiListErrorInfo: '',//wifi列表錯誤詳細(xì)
  7. system: '', //版本號
  8. platform: '', //系統(tǒng) android
  9. ssid: 'wifi帳號',//wifi帳號(必填)
  10. pass: 'wifi密碼',//無線網(wǎng)密碼(必填)
  11. bssid: '',//設(shè)備號 自動獲取
  12. endError: ''//連接最后的提示
  13. },
  14. onLoad: function () {
  15. var _this = this;
  16. //檢測手機型號
  17. wx.getSystemInfo({
  18. success: function (res) {
  19. var system = '';
  20. if (res.platform == 'android') system = parseInt(res.system.substr(8));
  21. if (res.platform == 'ios') system = parseInt(res.system.substr(4));
  22. if (res.platform == 'android' && system < 6) {
  23. _this.setData({ startError: '手機版本暫時不支持' }); return
  24. }
  25. if (res.platform == 'ios' && system < 11) {
  26. _this.setData({ startError: '手機版本暫時不支持' }); return
  27. }
  28. _this.setData({ platform: res.platform });
  29. //初始化 Wi-Fi 模塊
  30. _this.startWifi(_this);
  31. }
  32. })
  33.  
  34. },//初始化 Wi-Fi 模塊。
  35. startWifi: function (_this) {
  36. wx.startWifi({
  37. success: function () {
  38. _this.getList(_this);
  39. },
  40. fail: function (res) {
  41. _this.setData({ startError: res.errMsg });
  42. }
  43. })
  44. },
  45. getList: function (_this) {
  46. //安卓執(zhí)行方法
  47. if (_this.data.platform == 'android') {
  48. //請求獲取 Wi-Fi 列表
  49. wx.getWifiList({
  50. success: function (res) {
  51. //安卓執(zhí)行方法
  52. _this.AndroidList(_this);
  53. },
  54. fail: function (res) {
  55. _this.setData({ wifiListError: true });
  56. _this.setData({ wifiListErrorInfo: res.errMsg });
  57. }
  58. })
  59. }
  60. //IOS執(zhí)行方法
  61. if (_this.data.platform == 'ios') {
  62. _this.IosList(_this);
  63. }
  64.  
  65. },
  66. AndroidList: function (_this) {
  67. //監(jiān)聽獲取到 Wi-Fi 列表數(shù)據(jù)
  68. wx.onGetWifiList(function (res) { //獲取列表
  69. if (res.wifiList.length) {
  70. // _this.setData({
  71. // wifiList: res.wifiList
  72. // });
  73. //循環(huán)找出信號最好的那一個(wifi存在多個)
  74. var ssid = _this.data.ssid;
  75. var signalStrength = 0;
  76. var bssid = '';
  77. for (var i = 0; i < res.wifiList.length; i++) {
  78. if (res.wifiList[i]['SSID'] == ssid && res.wifiList[i]['signalStrength'] > signalStrength) {
  79. bssid = res.wifiList[i]['BSSID'];
  80. signalStrength = res.wifiList[i]['signalStrength'];
  81. }
  82. }
  83. if (!signalStrength) {
  84. _this.setData({ wifiListError: true });
  85. _this.setData({ wifiListErrorInfo: '未查詢到設(shè)置的wifi' });
  86. return
  87. }
  88. _this.setData({ bssid: bssid });
  89. //執(zhí)行連接方法
  90. //連接wifi
  91. _this.Connected(_this);
  92. } else {
  93. _this.setData({ wifiListError: true });
  94. _this.setData({ wifiListErrorInfo: '未查詢到設(shè)置的wifi' });


易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://22321a.com/wxmini/doc/course/24274.html 復(fù)制鏈接 如需定制請聯(lián)系易優(yōu)客服咨詢:800182392 點擊咨詢
QQ在線咨詢