apicloud apicloud

注册
查看: 443|回复: 2

[案例源码] wifiMgr模块示例。

主题:
28
帖子:
5034
云币:
4738

[案例源码] wifiMgr模块示例。

443 2 | 发表于 2018-3-3 15:39:48 |阅读模式 | |
         wifiMgr封装了与wifi有关的一系列接口,可实现手机自带的“设置”中连接wifi的功能,并附加了监听wifi开关状态、网络状态变化的接口,支持获取当前连接的wifi信息、扫描附近的wifi列表、获取已配置的wifi密码、连接指定的wifi等功能,开发者调用该模块可实现与wifi有关的功能           文档连接:https://docs.apicloud.com/Client-API/Device-Access/wifiMgr

           支持安卓平台
           模块版本: v1.0.1
  1. var wifi;
  2.                 apiready = function() {
  3.                         wifi = api.require('wifiMgr');
  4.                 }
  5.                 function fnGetCurWifiInfo() {
  6.                         wifi.getCurWifiInfo(function(ret, err) {
  7.                                 /*        if (ret.result == 1) {
  8.                                  new Vue({
  9.                                  el : '#v-for-object',
  10.                                  data : {
  11.                                  object : ret.data
  12.                                  }
  13.                                  });
  14.                                  };*/
  15.                                 var html = '<li><p> ' + '安全性:' + ret.data.encrypt + '</p></li>';
  16.                                 html += '<li><p> ' + '连接状态:' + ret.data.status + '</p></li>';
  17.                                 html += '<li><p> ' + ' 信号强度:' + ret.data.rssi + '</p></li>';
  18.                                 html += '<li><p> ' + '连接速度:' + ret.data.linkSpeed + '</p></li>';
  19.                                 html += '<li><p> ' + 'IP地址:' + ret.data.ipAddr + '</p></li>';
  20.                                 html += '<li><p> ' + 'Ap MAC:' + ret.data.bssid + '</p></li>';
  21.                                 html += '<li><p> ' + '网络ID:' + ret.data.networkId + '</p></li>';
  22.                                 html += '<li><p> ' + 'wifi名字:' + ret.data.ssid + '</p></li>';
  23.                                 html += '<li><p> ' + '是否隐藏wifi名字:' + ret.data.hiddenSSID + '</p></li>';
  24.                                 html += '<li><p> ' + ' 本机MAC:' + ret.data.hardAddr + '</p></li>';
  25.                                 html += '<li><p> ' + 'Wifi接口名:' + ret.data.name + '</p></li>';
  26.                                 html += '<li><p> ' + '网络掩码:' + ret.data.netmask + '</p></li>';
  27.                                 html += '<li><p> ' + '网关:' + ret.data.gateway + '</p></li>';
  28.                                 html += '<li><p> ' + 'DNS1:' + ret.data.dns1 + '</p></li>';
  29.                                 html += '<li><p> ' + 'DNS2:' + ret.data.dns2 + '</p></li>';
  30.                                 html += '<li><p> ------------------------------------------------</p></li>';
  31.                                 $api.html($api.byId('info'), html);
  32.                         });
  33.                 }

  34.                 function fnGetWifiState() {
  35.                         wifi.getWifiState(function(ret, err) {
  36.                                 alert(JSON.stringify(ret));
  37.                         });
  38.                 }

  39.                 function fnOpenWifi() {
  40.                         wifi.openWifi(function(ret, err) {
  41.                                 alert(JSON.stringify(ret));
  42.                         });
  43.                 }

  44.                 function fnCloseWifi() {
  45.                         wifi.closeWifi(function(ret, err) {
  46.                                 alert(JSON.stringify(ret));
  47.                         });
  48.                 }

  49.                 function fnToWifiSettingView() {
  50.                         wifi.toWifiSettingView(function(ret, err) {
  51.                                 alert(JSON.stringify(ret));
  52.                         });
  53.                 }

  54.                 function fnScanWifis() {
  55.                         wifi.scanWifis(function(ret, err) {
  56.                                 if (ret.result == 1) {
  57.                                         var html = '';
  58.                                         for (var i = 0; i < ret.wifiList.length; i++) {
  59.                                                 html += '<li><p> ' + 'wifi名字:' + ret.wifiList[i].ssid + '</p></li>';
  60.                                                 html += '<li><p> ' + 'Ap MAC:' + ret.wifiList[i].bssid + '</p></li>';
  61.                                                 html += '<li><p> ' + '频率:' + ret.wifiList[i].frequency + '</p></li>';
  62.                                                 html += '<li><p> ' + '信号强度:' + ret.wifiList[i].level + '</p></li>';
  63.                                                 html += '<li><p> ' + '加密方式:' + ret.wifiList[i].capabilities + '</p></li>';
  64.                                                 html += '<li><p> ------------------------------------------------</p></li>';
  65.                                         }
  66.                                         $api.html($api.byId('info'), html);
  67.                                 }
  68.                         });
  69.                 }

  70.                 function fnGetConfiguredNetworks() {
  71.                         wifi.getConfiguredNetworks(function(ret, err) {
  72.                                 if (ret.result == 1) {
  73.                                         var html = '';
  74.                                         for (var i = 0; i < ret.configuredNetworks.length; i++) {
  75.                                                 html += '<li><p> ' + 'wifi名字:' + ret.configuredNetworks[i].ssid + '</p></li>';
  76.                                                 html += '<li><p> ' + 'wifi名字是否隐藏:' + ret.configuredNetworks[i].hiddenSSID + '</p></li>';
  77.                                                 html += '<li><p> ' + '网络id:' + ret.configuredNetworks[i].networkId + '</p></li>';
  78.                                                 html += '<li><p> ' + '优先级:' + ret.configuredNetworks[i].priority + '</p></li>';
  79.                                                 html += '<li><p> ' + '状态:' + ret.configuredNetworks[i].status + '</p></li>';
  80.                                                 html += '<li><p> ------------------------------------------------</p></li>';
  81.                                         };
  82.                                         $api.html($api.byId('info'), html);
  83.                                 };
  84.                         });
  85.                 }

  86.                 function fnConnect() {
  87.                         var ssid = $api.val($api.byId('wifiname'));
  88.                         var password = $api.val($api.byId('wifipassword'));
  89.                         wifi.connect({
  90.                                 ssid : ssid,
  91.                                 pwd : password,
  92.                                 capabilities : 'WPA'
  93.                         }, function(ret, err) {
  94.                                 alert(JSON.stringify(ret));
  95.                         });
  96.                 }

  97.                 function fnDisConnect() {
  98.                         wifi.disConnect(function(ret, err) {
  99.                                 alert(JSON.stringify(ret));
  100.                         });
  101.                 }

  102.                 function fnRemoveNetwork() {
  103.                         var ssid = $api.val($api.byId('removewifiname'));
  104.                         wifi.removeNetwork({
  105.                                 ssid : ssid
  106.                         }, function(ret, err) {
  107.                                 alert(JSON.stringify(ret));
  108.                         });
  109.                 }

  110.                 function fnDisableNetwork() {
  111.                         var ssid = $api.val($api.byId('disablewifiname'));
  112.                         wifi.disableNetwork({
  113.                                 ssid : ssid
  114.                         }, function(ret, err) {
  115.                                 alert(JSON.stringify(ret));
  116.                         });
  117.                 }

  118.                 function fnGetWifiPassword() {
  119.                 var ssid = $api.val($api.byId('getpasswordwifiname'));
  120.                         wifi.getWifiPassword({
  121.                          ssid:ssid
  122.                         }, function(ret, err) {
  123.                                 alert(JSON.stringify(ret));
  124.                         });
  125.                 }

  126.                 function fnGetConnectionType() {
  127.                         wifi.getConnectionType(function(ret, err) {
  128.                                 alert(JSON.stringify(ret));
  129.                         });
  130.                 }

  131.                 function fnAddWifiStateListener() {
  132.                         wifi.addWifiStateListener(function(ret, err) {
  133.                                 console.log(JSON.stringify(ret));
  134.                         });
  135.                 }

  136.                 function fnRemoveWifiStateListener() {
  137.                         wifi.removeWifiStateListener(function(ret, err) {
  138.                                 console.log(JSON.stringify(ret));
  139.                         });
  140.                 }

  141.                 function fnAddNetChangedListener() {
  142.                         wifi.addNetChangedListener(function(ret, err) {
  143.                                 console.log(JSON.stringify(ret));
  144.                         });
  145.                 }

  146.                 function fnRemoveNetChangedListener() {
  147.                         wifi.removeNetChangedListener(function(ret, err) {
  148.                                 console.log(JSON.stringify(ret));
  149.                         });
  150.                 }
复制代码


本帖子中包含更多资源    您需要 登录 才可以下载或查看,没有帐号?立即注册

主题:
37
帖子:
236
云币:
286

捣蛋鬼

发表于 2018-3-3 15:40:14 |
广告位招租

主题:
1043
帖子:
4731
云币:
2147223397

圣诞节捣蛋鬼APICloud大会专属勋章足球狗儿童节快乐

发表于 2018-3-7 18:45:10 |
感谢分享
您需要登录后才可以回帖 登录 | 立即注册

快速回复 返回顶部 返回列表