简化Android Wifi开发,已实现常用的功能,比如获取WiFi管理,WiFi列表,断开、清除或者连接WiFi。

简化Android Wifi开发,已实现常用的功能,比如获取WiFi管理,WiFi列表,断开、清除或者连接WiFi。

Github地址(别下demo了,不是少这个就是少那个,直接用library干就完了)

https://github.com/hacknife/WifiManager

[作者主页](https://github.com/hacknife)

注意!

注意!

注意!

注意:Android 9 之后 wifi扫描做了限制,前台应用2分钟之内最多允许扫描4次wifi列表

所以,要么你就老老实实调系统wifi

要么你就 跟腾讯wifi管家、万能wifi钥匙之类的软件一样,targetSdkVersion 为26、27。



下面开始介绍大致用法

特点

  • 根据信号强度排序
  • 连接或操作中的WIFI自动置顶
  • 自动刷新WIFI列表
  • 支持常见Wifi操作
简化Android Wifi开发,已实现常用的功能,比如获取WiFi管理,WiFi列表,断开、清除或者连接WiFi。_第1张图片
screenshots.png

概述

WifiManager主要是由IWifiManagerIWifi组成,IWifiManager中可实现三个接口,完成Wifi列表数据更新

Class

IWifiManager

方法 功能
isOpened() WIFI是否打开
openWifi() 打开WIFI
closeWifi() 关闭WIFI
scanWifi() 扫描WIFI。此方法为异步操作,扫描结果会通过接口回掉
disConnectWifi() 断开当前连接
connectEncryptWifi(IWifi wifi, String password) 通过密码,连接WIFI
connectSavedWifi(IWifi wifi) 连接已保存的WIFI
connectOpenWifi(IWifi wifi) 连接开放的WIFI
removeWifi(IWifi wifi) 清除已保存的WIFI
getWifi() 获取WIFI列表。此方法不建议使用,若是WIFI列表有变化会通过接口回调
setOnWifiConnectListener(OnWifiConnectListener listener) wifi连接状态变化监听
setOnWifiStateChangeListener(OnWifiStateChangeListener listener) wifi状态变化监听
setOnWifiChangeListener(OnWifiChangeListener listener) wifi列表变化监听。包含WiFi数目变化,WiFi状态变化等,用户只需要展示即可
destroy() IWifiManager不需要使用时,需销毁

IWifi

方法 功能
name() Wifi名称
isEncrypt() 是否加密
isSaved() 密码是否保存
isConnected() 是否连接
encryption() 加密类型描述,例如:WEP等
level() 信号强度
ip() 若当前WiFi连接,ip不为空
description() wifi描述
description2() wifi描述,含Ip

OnWifiChangeListener

方法 功能
onWifiChanged(List wifis) wifi列表,wifi所有变化都会通过此方法,只需要展示此列表即可

OnWifiConnectListener

方法 功能
onConnectChanged(boolean status) wifi是否连接

OnWifiStateChangeListener

方法 功能
onStateChanged(State state) wifi状态,例如:开启中,已开启,关闭中,已关闭

使用说明

1.获取IWifiManager

    IWifiManager.create(Context context);

2.销毁IWifiManager

    iWifiManager.destroy();

快速引入项目

合并以下代码到需要使用的Module的dependencies中。

    dependencies {
                ...
              implementation 'com.hacknife:wifimanager:1.0.2'
    }

你可能感兴趣的:(简化Android Wifi开发,已实现常用的功能,比如获取WiFi管理,WiFi列表,断开、清除或者连接WiFi。)