连接WiFi工具类
 public class WifiConnect {
     WifiManager wifiManager;
     // 构造函数
     public WifiConnect(WifiManager wifiManager) {
         this.wifiManager = wifiManager;
     }
     // 提供一个外部接口,传入要连接的无线网
     public boolean Connect(String SSID, String Password, int Type) {
         WifiConfiguration wifiConfig = this
                 .CreateWifiInfo(SSID, Password, Type);
         WifiConfiguration tempConfig = this.IsExsits(SSID);
         if (tempConfig != null) {
             wifiManager.removeNetwork(tempConfig.networkId);
         }
         int netID = wifiManager.addNetwork(wifiConfig);
         boolean flag = wifiManager.enableNetwork(netID, true);
         return flag;
     }
     // 查看以前是否也配置过这个网络
     private WifiConfiguration IsExsits(String SSID) {
         List<WifiConfiguration> existingConfigs = wifiManager
                 .getConfiguredNetworks();
         for (WifiConfiguration existingConfig : existingConfigs) {
             if (existingConfig.SSID.equals("\"" + SSID + "\"")) {
                 return existingConfig;
             }
         }
         return null;
     }
     // 配置WifiConfiguration
     public WifiConfiguration CreateWifiInfo(String SSID, String Password,
             int Type) {
         WifiConfiguration config = new WifiConfiguration();
         config.allowedAuthAlgorithms.clear();
         config.allowedGroupCiphers.clear();
         config.allowedKeyManagement.clear();
         config.allowedPairwiseCiphers.clear();
         config.allowedProtocols.clear();
         config.SSID = "\"" + SSID + "\"";
         WifiConfiguration tempConfig = this.IsExsits(SSID);
         if (tempConfig != null) {
             wifiManager.removeNetwork(tempConfig.networkId);
         }
         if (Type == 1) // WIFICIPHER_NOPASS
         {
             config.wepKeys[0] = "";
             config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
             config.wepTxKeyIndex = 0;
         }
         if (Type == 2) // WIFICIPHER_WEP
         {
             config.hiddenSSID = true;
             config.wepKeys[0] = "\"" + Password + "\"";
             config.allowedAuthAlgorithms
                     .set(WifiConfiguration.AuthAlgorithm.SHARED);
             config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
             config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
             config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40);
             config.allowedGroupCiphers
                     .set(WifiConfiguration.GroupCipher.WEP104);
             config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
             config.wepTxKeyIndex = 0;
         }
         if (Type == 3) // WIFICIPHER_WPA
         {
             config.preSharedKey = "\"" + Password + "\"";
             config.hiddenSSID = true;
             config.allowedAuthAlgorithms
                     .set(WifiConfiguration.AuthAlgorithm.OPEN);
             config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
             config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
             config.allowedPairwiseCiphers
                     .set(WifiConfiguration.PairwiseCipher.TKIP);
             // config.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
             config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
             config.allowedPairwiseCiphers
                     .set(WifiConfiguration.PairwiseCipher.CCMP);
             config.status = WifiConfiguration.Status.ENABLED;
         }
         return config;
     }
 }
连接WiFi工具类的更多相关文章
- Druid连接池工具类
		package cn.zmh.PingCe; import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSo ... 
- Android OkHttp网络连接封装工具类
		package com.lidong.demo.utils; import android.os.Handler; import android.os.Looper; import com.googl ... 
- jdbc连接的工具类
		在不实用框架的情况下,有一个jdbc的工具类来进行数据库的连接就再好不过了,下面提供这个工具类DBUtil.java package org.jdbc.test; import java.io.Inp ... 
- C3P0连接池工具类使用
		c3p0的基本连接配置文件 c3p0-config.xml <c3p0-config> <default-config> <property name="dri ... 
- C3P0连接池工具类实现步骤及方法
		C3P0连接池的工具类 使用C3P0获得连接对象连接池有一个规范接口 javax.sal.DataSourse 接口定义了一个从连接池中获得连接的方法getConnection(); 步骤导入jar包 ... 
- JDBC连接Oracle工具类
		import java.sql.*;import java.util.ResourceBundle; /** * jdbc工具类,负责: * 1. 加载/注册数据库驱动程序 * 2. 获取数据库连接 ... 
- Java 连接 SqlServer工具类
		1.下载 server2008R2驱动jar包 下载jar包 http://www.microsoft.com/zh-cn/download/confirmation.aspx?id=21599 2. ... 
- 自己写了一个mysql连接的工具类【java】
		要用的话,包名自己可以改一下: package com.usa3v.dreamcenter.util; import java.sql.Connection; import java.sql.Driv ... 
- android 判断网络连接的工具类
		package com.way.util; import android.content.Context; import android.net.ConnectivityManager; import ... 
随机推荐
- intellij安装lombok插件,解决注解@Slf4j注入后找不到变量log
			1.进入设置 2.搜索插件 3.安装 
- cron任务解释
			cron本来是在linux下的一个定时任务执行工具,现在很多语言都支持cron,本文参考https://en.wikipedia.org/wiki/Cron,解释一下cron配置. 概述 cron配置 ... 
- MySQL相关命令
			我们现在初步学习MySQL,下面来简单介绍一下MySQL常用命令 版权归skylinelin所有,转载请注明出处. 首先登录MySQL数据库,"\h"一下看一下帮助信息 这些就是M ... 
- 【python】入门:打印字符串、简单计算
- Python学习日记:day4
			列表 li=['alex',[1,2,3] ,'wusir','egon','女神','taibai']#列表 l1 = li[0] print(l1)#alex l2 = li[1] print ( ... 
- Xamarin android如何反编译apk文件
			Xamarin android 如何反编译 apk文件 这里推荐一款XamarinAndroid开发的小游戏,撸棍英雄,游戏很简单,的确的是有点大.等一下我们来翻翻译这个Xamarin Android ... 
- lesson - 13 Linux系统日常管理2
			内容概要: 1. Linux抓包工具 tcpdump 系统自带抓包工具tcpdump -nn -i eth0 tcp and host 192.168.0.1 and port 80tcpdump - ... 
- Centos6.8防火墙配置
			1.基本操作 # 查看防火墙状态 service iptables status # 停止防火墙 service iptables stop # 启动防火墙 service iptables star ... 
- 在ubuntu上安装pyenv出现的问题
			1.安装完pyenv时,并没有出现问题.但在安装python3.6.1时报错: ERROR: The Python ssl extension was not compiled. Missing th ... 
- TCP协议(二)——TIME_WAIT状态
			当TCP主动关闭套接字时,采用四步握手机制来彻底关闭连接.如图: 客户端主动关闭连接,发送FIN段到服务端.TCP状态由ESTABLISHED(连接状态)转为FIN_WAIT1(表示,发送的FIN需要 ... 
