Android 获取连接 WiFi MAC 地址方法
该函数是一个公共方法,用于获取当前连接的 WiFi 网络的 MAC 地址。它需要一个上下文对象作为参数。
public String getConnectedWifiMacAddress(Context context) {
WifiManager wifiManager = (WifiManager) context.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
if (wifiManager != null) {
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
if (wifiInfo != null) {
String macAddress = wifiInfo.getBSSID();
if (macAddress != null && !macAddress.isEmpty()) {
return macAddress;
}
}
}
return null;
}
函数解释:
- 获取 WiFi 服务: 使用
context.getApplicationContext().getSystemService(Context.WIFI_SERVICE)获取系统提供的 WiFi 服务,并存储到wifiManager变量中。 - 检查 WiFi 服务: 检查
wifiManager是否为空,如果为空则说明系统没有提供 WiFi 服务,直接返回null。 - 获取连接信息: 如果
wifiManager不为空,则调用wifiManager.getConnectionInfo()获取当前连接的 WiFi 信息,并存储到wifiInfo变量中。 - 检查 MAC 地址: 检查
wifiInfo是否为空,如果为空则说明没有连接到 WiFi 网络,直接返回null。 - 获取 MAC 地址: 如果
wifiInfo不为空,则调用wifiInfo.getBSSID()获取当前连接 WiFi 网络的 MAC 地址,并存储到macAddress变量中。 - 判断 MAC 地址: 检查
macAddress是否为空或空字符串,如果为空则说明获取失败,返回null。 - 返回 MAC 地址: 如果
macAddress不为空,则返回获取到的 MAC 地址。
参数:
- Context context: 上下文对象,用于获取 WiFi 服务。
返回值:
- String: 当前连接的 WiFi 的 MAC 地址,如果没有连接则返回
null。
原文地址: https://www.cveoy.top/t/topic/mXgJ 著作权归作者所有。请勿转载和采集!