android6.0及以上获取wifi mac地址的方法(亲测可行)
来源:互联网 发布:osi网络模型 编辑:程序博客网 时间:2024/05/22 12:25
由于android6.0对wifi mac地址获取进行了限制,用原来的方法获取会获取到02:00:00:00:00:00这个固定地址。
但是可以通过读取节点进行获取"/sys/class/net/wlan0/address"
在6.0以前的获取WiFi的Mac地址
// Android 6.0之前的版本可以用的方法(模拟器可以使用) public String getLocalMacAddress() { WifiManager wifi = (WifiManager)getApplicationContext().getSystemService(WIFI_SERVICE); // WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); WifiInfo info = wifi.getConnectionInfo(); return info.getMacAddress(); }
Android6.0及其以上使用一下代码
// Android 6.0以上获取WiFi的Mac地址 //由于android6.0对wifi mac地址获取进行了限制,用原来的方法获取会获取到02:00:00:00:00:00这个固定地址。 //但是可以通过读取节点进行获取"/sys/class/net/wlan0/address" public static String getMacAddr() { try { return loadFileAsString("/sys/class/net/wlan0/address") .toUpperCase().substring(0, 17); } catch (IOException e) { e.printStackTrace(); return ""; } } private static String loadFileAsString(String filePath) throws java.io.IOException { StringBuffer fileData = new StringBuffer(1000); BufferedReader reader = new BufferedReader(new FileReader(filePath)); char[] buf = new char[1024]; int numRead = 0; while ((numRead = reader.read(buf)) != -1) { String readData = String.valueOf(buf, 0, numRead); fileData.append(readData); } reader.close(); return fileData.toString(); }
- 下面的代码可以获取当当前设备连接到的网络的wifi信息
- WifiManager mWifi = (WifiManager)getSystemService(Context.WIFI_SERVICE);
- if (mWifi.isWifiEnabled()) {
- WifiInfo wifiInfo = mWifi.getConnectionInfo();
- String netName = wifiInfo.getSSID(); //获取被连接网络的名称
- String netMac = wifiInfo.getBSSID(); //获取被连接网络的mac地址
- String localMac = wifiInfo.getMacAddress();// 获得本机的MAC地址
- }
在连接上WiFi情况下,亲测通过,如下图所示:
源码下载地址:点击打开链接
阅读全文
1 0
- android6.0及以上获取wifi mac地址的方法(亲测可行)
- android6.0获取wifi mac地址的一种方法
- Android6.0系统MAC地址获取的方法
- Android6.0及以上版本Wifi开发,扫描Wifi信息,获取Wifi列表为空
- Android6.0系统获取不到蓝牙和wifi的真实MAC地址
- 关于获取Android6.0的MAC地址
- Android 获取WIFI MAC地址的方法
- Android6.0 获取MAC地址
- Android6.0以上获取前台进程的方法
- Android6.0(棉花糖)以上动态获取权限方法
- iOS 获取Wifi的SSID及MAC地址
- iOS 获取Wifi的SSID及MAC地址
- iOS 获取Wifi的SSID及MAC地址
- android6.0获取蓝牙mac地址
- 获取wifi及bt mac地址
- Android6.0以上版本获取本机蓝牙地址
- JS获取MAC地址、IP地址及主机名的方法
- WiFi设备MAC地址的获取-----安卓端
- C++中头文件在源文件中总显示未定义
- [线性代数]矩阵
- 心情复杂
- hdu1828 Picture(线段树+扫描线+矩形周长并)
- hdu-3016-Man Down(线段树)
- android6.0及以上获取wifi mac地址的方法(亲测可行)
- 模拟基本的RPC框架代码
- LeetCode刷题(8)
- 机器学习中的L0L1L2
- 去除inline-block元素间间距的几种方法
- 单例设计模式
- python学习第二天-操作列表
- HDU 1556 Color the ball【树状数组||前缀和】
- 将字符串转换为基本数据类型