admin管理员组文章数量:1542716
基础知识:
Android的wifi信息获取先要自学相关基础知识,下面是相关基础知识。
获取系统wifi服务
// 获取系统wifi服务
WifiManage wm = (WifiManager) getApplicationContext().getSystemService(WIFI_SERVICE);
// 获取当前所连接wifi的信息
WifiInfo wi = wm.getConnectionInfo();
// 获取扫描到的所有wifi信息
List<ScanResult> scanResults = wm.getScanResults();
获取wifi信息的各种方法及异同
这里只简略地提及WifiManage, WifiInfo, ScanResult 这三个类的一些方法,如果非常感兴趣可以去安卓社区看看。废话不多说,Here we go!
WifiManage类wifi信息获取方法
wm.getConnectionInfo(); // 获取当前连接信息
wm.getWifiState(); // 获取当前手机wifi网卡状态
wm.getScanResults(); // 获取扫描到的wifi信息列表(返回类型是链表)
- 手机wifi网卡状态分五种情况
wifi网卡状态 详细说明 WifiManager.WIFI_STATE_ENABLED
wifi网卡可用 WifiManager.WIFI_STATE_DISABLED
wifi网卡不可用 WifiManager.WIFI_STATE_DISABLING
wifi网卡正关闭 WifiManager.WIFI_STATE_ENABLING
wifi网卡正打开 WifiManager.WIFI_STATE_UNKNOWN
状态未知
- 对应手机要开的权限如下:
权限代码 详细说明 ACCESS_WIFI_STATE 允许程序获得wifi的状态信息 INTERNET 允许程序获得手机网络权限 CHANGE_NETWORK_STATE 允许应用程序改变wifi连接状态
WifiInfo类方法
wi.getSSID(); // 获取当前连接wifi的名词
wi.getBSSID(); // 获取路由器Mac地址,String类型
wi.getMacAddress(); // 获取本机Mac地址
wi.getRssi(); // 获取当前连接wifi的信号强度
wi.getLinkSpeed(); // 获取连接速度
WifiInfo.LINK_SPEED_UNITS; // 连接速度单位
wi.getRssi()
获取的就是所连接wifi的RSSI1
ScanResult类方法
scanResult.SSID();
scanResult.BSSID();
scanResult.level(); // 信号强度(原始数据)
Wif
版权声明:本文标题:Android连续获取当前所连接WiFi及周围热点列表信息的解决方案 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1727078847a1096616.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论