Android获取mac地址方法,6.0以上也可用
16lz
2021-12-04
许多Android设备的应用获取服务器资源时,需要先将本机的mac地址在服务器端注册,如电视机盒子,手机的部分应用,这里记录一下开发中自己使用的获取mac地址的方法。
/** * 获取手机的MAC地址 * @return String */ public String getMac(){ String str=""; String macSerial=""; try { Process pp = Runtime.getRuntime().exec( "cat /sys/class/net/wlan0/address "); InputStreamReader ir = new InputStreamReader(pp.getInputStream()); LineNumberReader input = new LineNumberReader(ir); for (; null != str;) { str = input.readLine(); if (str != null) { macSerial = str.trim();// 去空格 break; } } } catch (Exception ex) { ex.printStackTrace(); } if (macSerial == null || "".equals(macSerial)) { try { return loadFileAsString("/sys/class/net/eth0/address") .toUpperCase().substring(0, 17); } catch (Exception e) { e.printStackTrace(); } } return macSerial; } public static String loadFileAsString(String fileName) throws Exception { FileReader reader = new FileReader(fileName); String text = loadReaderAsString(reader); reader.close(); return text; } public static String loadReaderAsString(Reader reader) throws Exception { StringBuilder builder = new StringBuilder(); char[] buffer = new char[4096]; int readLength = reader.read(buffer); while (readLength >= 0) { builder.append(buffer, 0, readLength); readLength = reader.read(buffer); } return builder.toString(); }
更多相关文章
- 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像
- Android简明开发教程二十三:发布应用
- Android(安卓)多媒体应用——MediaPlayer音频播放
- Android中的几种网络请求方式详解
- 高手速成android开源项目【tool篇】
- android 开发之旅
- 【Android开发学习02】Android应用程序的调试
- Android百度地图——定位SDK(版本v3.1)(一)
- Android(安卓)学习笔记【基础扫盲篇】