Android 关于wifi管理的代码

开启和关闭wifi的代码

1、需要申请的权限
  android.permission.ACCESS_WIFI_STATE
  android.permission.CHANGE_WIFI_STATE
  android.permission.WAKE_LOCK
2、获取WifiManager
  wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
3、开启、关闭wifi
  if (wifiManager.isWifiEnabled()) {
  wifiManager.setWifiEnabled(false);
  } else {
  wifiManager.setWifiEnabled(true);
  }


Android设置wifi

1.new 一个wificonfiguration对象。

2.设置这个对象的一些属性。

WifiConfiguration wc = new WifiConfiguration();
wc.SSID = "\""+sr.SSID+"\"";      //<span style="color: rgb(255, 0, 0); ">这个地方一定要注意了。旁边的“是不能够省略的。密码的地方也一样。</span>
wc.preSharedKey = "\""+etPassword.getText().toString()+"\"";      //该热点的密码
wc.hiddenSSID = true;
wc.status = WifiConfiguration.Status.ENABLED;
wc.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);
wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
wc.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
wc.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
wc.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
wc.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
3.判断wifi是否加密:
    public static int getSecurity(ScanResult result) {
        if (result.capabilities.contains("WEP")) {
            return 1;
        } else if (result.capabilities.contains("PSK")) {
            return 2;
        } else if (result.capabilities.contains("EAP")) {
            return 3;
        }
        return 0;
    }
    

4.连接未加密wifi连接:

<pre name="code" class="java">WifiConfiguration config = new WifiConfiguration();
config.SSID = "\"" + sr.SSID + "\"";
config.allowedKeyManagement.set(KeyMgmt.NONE);
int networkId = wifiManager.addNetwork(config);
if(networkId != -1){
    wifiManager.enableNetwork(networkId, false);
    wifiManager.saveConfiguration();
}</pre><p></p>
<pre></pre>
<p></p>





你可能感兴趣的:(android,管理,wifi)