不说了,上代码

package com.wifitest;import java.util.List;import android.content.Context;import android.net.wifi.ScanResult;import android.net.wifi.WifiConfiguration;import android.net.wifi.WifiInfo;import android.net.wifi.WifiManager;import android.net.wifi.WifiManager.WifiLock;public class WifiManageClass {    private WifiManager wifiManager;// 声明管理对象    private WifiInfo wifiInfo;// Wifi信息    private List<ScanResult> scanResultList; // 扫描出来的网络连接列表    private List<WifiConfiguration> wifiConfigList;// 网络配置列表    private WifiLock wifiLock;// Wifi锁    public WifiManageClass(Context context) {        this.wifiManager = (WifiManager) context                .getSystemService(Context.WIFI_SERVICE);// 获取Wifi服务        // 得到Wifi信息        this.wifiInfo = wifiManager.getConnectionInfo();// 得到连接信息    }        public boolean getWifiStatus()    {         return wifiManager.isWifiEnabled();    }    // 打开/关闭 wifi    public boolean openWifi() {        if (!wifiManager.isWifiEnabled()) {            return wifiManager.setWifiEnabled(true);        } else {            return false;        }    }    public boolean closeWifi() {        if (!wifiManager.isWifiEnabled()) {            return true;        } else {            return wifiManager.setWifiEnabled(false);        }    }    // 锁定/解锁wifi    // 其实锁定WiFI就是判断wifi是否建立成功,在这里使用的是held,握手的意思acquire 得到!    public void lockWifi() {        wifiLock.acquire();    }    public void unLockWifi() {        if (!wifiLock.isHeld()) {            wifiLock.release(); // 释放资源        }    }    // 我本来是写在构造函数中了,但是考虑到不是每次都会使用Wifi锁,所以干脆自己建立一个方法!需要时调用,建立就OK    public void createWifiLock() {        wifiLock = wifiManager.createWifiLock("flyfly"); // 创建一个锁的标志    }    // 扫描网络    public void startScan() {        wifiManager.startScan();        scanResultList = wifiManager.getScanResults(); // 扫描返回结果列表        wifiConfigList = wifiManager.getConfiguredNetworks(); // 扫描配置列表    }    public List<ScanResult> getWifiList() {        return scanResultList;    }    public List<WifiConfiguration> getWifiConfigList() {        return wifiConfigList;    }    // 获取扫描列表    public StringBuilder lookUpscan() {        StringBuilder scanBuilder = new StringBuilder();        for (int i = 0; i < scanResultList.size(); i++) {            scanBuilder.append("编号:" + (i + 1));            scanBuilder.append(scanResultList.get(i).toString());  //所有信息            scanBuilder.append("\n");        }        return scanBuilder;    }    //获取指定信号的强度    public int getLevel(int NetId)    {        return scanResultList.get(NetId).level;    }    // 获取本机Mac地址    public String getMac() {        return (wifiInfo == null) ? "" : wifiInfo.getMacAddress();    }    public String getBSSID() {        return (wifiInfo == null) ? null : wifiInfo.getBSSID();    }    public String getSSID() {        return (wifiInfo == null) ? null : wifiInfo.getSSID();    }    // 返回当前连接的网络的ID    public int getCurrentNetId() {        return (wifiInfo == null) ? null : wifiInfo.getNetworkId();    }    // 返回所有信息    public String getwifiInfo() {        return (wifiInfo == null) ? null : wifiInfo.toString();    }    // 获取IP地址    public int getIP() {        return (wifiInfo == null) ? null : wifiInfo.getIpAddress();    }    // 添加一个连接    public boolean addNetWordLink(WifiConfiguration config) {        int NetId = wifiManager.addNetwork(config);        return wifiManager.enableNetwork(NetId, true);    }    // 禁用一个链接    public boolean disableNetWordLick(int NetId) {        wifiManager.disableNetwork(NetId);        return wifiManager.disconnect();    }    // 移除一个链接    public boolean removeNetworkLink(int NetId) {        return wifiManager.removeNetwork(NetId);    }    //不显示SSID    public void hiddenSSID(int NetId)    {        wifiConfigList.get(NetId).hiddenSSID=true;    }    //显示SSID    public void displaySSID(int NetId)    {        wifiConfigList.get(NetId).hiddenSSID=false;    }    }

更多相关文章

  1. Android(安卓)tips2
  2. Android——高德地图设置中心点和缩放比例,获取两点之间距离
  3. Android仿抖音App 列表滑动 PagerSnapHelper
  4. Android(安卓)Google 地图学习
  5. 如何获取Android设备名称(常用ADB命令介绍)
  6. 「Android」从其他Activity获取结果:registerForActivityResult()
  7. Android获取包相关信息--code
  8. Android中获取和设置手机的壁纸
  9. Python list sort方法的具体使用

随机推荐

  1. Sqlserver事务备份和还原的实例代码(必看
  2. SQLServer存储过程创建和修改的实现代码
  3. Sql Server临时表和游标的使用小结
  4. SQL查询方法精华集
  5. SQLServer中使用扩展事件获取Session级别
  6. Sql Server数据库各版本功能对比
  7. SQL Server 常用函数使用方法小结
  8. SQL Server中关于基数估计计算预估行数的
  9. SQL Server 公用表表达式(CTE)实现递归的
  10. MSSQL 2008 自动备份数据库的设置方法