文档章节

获取mac地址

挥挥手
 挥挥手
发布于 2015/02/03 09:55
字数 170
阅读 61
收藏 1
 /**
  * 获取mac地址
  * 
  * @return
  */
 public  String getMacAddr(Context ctx) {
 
  String macAddress = null;
  macAddress = getEthMAC();
  if (macAddress.equals(""))
   macAddress = getWifiMAC(ctx);
  
  mac = macAddress;
  Log.d("test", "Context get mac address : " + mac);
  return macAddress;
 }
 /**
  * 获取无线网卡mac地址
  *  
  */
 private static String getWifiMAC(Context ctx) {
  try{
   String macAddress = null;
   WifiManager wifiMgr = (WifiManager)ctx.getSystemService(Context.WIFI_SERVICE);
   WifiInfo info = (null == wifiMgr ? null : wifiMgr.getConnectionInfo());
   if (null != info) 
       macAddress = info.getMacAddress();
   
   return macAddress;
  }catch(Exception e){
   return "";
  }
 }
 
 /**
  * 
  * 获取文件MAC地址 /sys/class/net/eth0/address
  */
 private static String getEthMAC() {
  Reader reader = null;
  StringBuffer str = new StringBuffer();
  try {
   char[] tempchars = new char[20];
   int charread = 0;
   reader = new InputStreamReader(new FileInputStream(
     "/sys/class/net/eth0/address"));
   while ((charread = reader.read(tempchars)) != -1) {
    if ((charread == tempchars.length)
      && (tempchars[tempchars.length - 1] != '\r')) {
     System.out.print(tempchars);
    } else {
     for (int i = 0; i < charread; i++) {
      if (tempchars[i] == '\r') {
       continue;
      } else {
       str.append(tempchars[i]);
      }
     }
    }
   }
  } catch (Exception e1) {
//   LogUtils.e(TAG, e1.getMessage());
  } finally {
   if (reader != null) 
    try {
     reader.close();
    } catch (Exception e1) { }
  }
  return str.toString().trim();
 }

© 著作权归作者所有

挥挥手
粉丝 0
博文 6
码字总数 865
作品 0
东城
程序员
私信 提问
iOS 获取蓝牙设备mac地址

iOS 扫描到蓝牙设备,怎么获取蓝牙设备的mac地址,因为我想去连接指定mac地址的设备,搜索出来一堆,要拿mac地址去区分,网上有说连接以后才能获取到蓝牙设备的mac地址,请问不连接之前怎么获...

偏执的麻瓜
2017/07/23
332
0
error C2065: “CString”: 未声明的标识符

在编译文章: 使用GetAdaptersAddresses函数获取物理MAC地址中的代码时,出现以下错误: 错误 3 error C2065: “CString”: 未声明的标识符 f:ccprojects获取网卡物理地址mac地址获取网卡物理...

微wx笑
2015/05/31
0
0
网口测试、MAC管控工具--iMACcheck

一个用于电子产品生产线的网络接口检测及MAC地址管控工具。 主要功能: 1、监听网络,获取符合固定标识的MAC地址; 2、记录MAC,甄别重复,链接后端机器获取MAC批次信息; 3、可通过telnet完...

Garfielt
2013/06/26
6.5K
1
Linux 网络编程——原始套接字实例:MAC 地址扫描器

版权声明:本博客文章,大多是本人整理编写,或在网络中收集,转载请注明出处! https://blog.csdn.net/tennysonsky/article/details/44923355 如果 A (192.168.1.1 )向 B (192.168.1.2 )...

Mike__Jiang
2015/04/07
0
0
django项目中如何判断用户登录设备改变?

1我在用Django admin做一个项目,用户第一次登录的时候会绑定手机验证安全, 如果用户换了一台电脑登录,会给手机发验证信息。我现在不知道怎么能识别 用户换了一台电脑登录。我在Linux系统下...

努力学习的小码农
04/12
35
0

没有更多内容

加载失败,请刷新页面

加载更多

Phpstorm2018 永久激活

1、安装phpstorm,安装包请自行官网下载 http://www.jetbrains.com/phpstorm/download/ 2、下载JetbrainsCrack.jar文件,存放至你的phpstorm执行文件同级目录下 下载JetbrainsCrack.jar 提取...

happyfish319
31分钟前
6
0
谈一谈Android进程间通信的几种方式

###来看一下Android中除了AIDL还有哪些进程间通信的方式: 1、Bundle Bundle实现了Parcelable,所以在Android中我们可以通过Intent在不同进程间传递Bundle数据。 但是在Intent 传输数据的过程...

二营长的意大利炮手
32分钟前
7
0
互联网薪资“高开低走”,你的能力是否真的可以匹配高薪?

对于国内外主流互联网大厂,技术出身似乎已经成为各大掌门人的必备标签。谷歌 CEO 桑达尔·皮查伊、马克·扎克伯格、李彦宏、马化腾、雷军等等皆为技术人出身,都曾参与了公司内部重要产品的...

Java技术剑
33分钟前
9
0
java 多线程

线程声明周期 线程的五个状态:新建,就绪,运行,阻塞,死亡。 其中就绪和运行两个状态客户互相转换,但运行到阻塞,阻塞到就绪,只能单向转换。 刚new出的线程就是【新建】状态,调用start...

雷开你的门
35分钟前
12
0
构造器Constructor是否可被overrid

构造器不能被重写,不能用static修饰构造器,只能用public private protected这三个权限修饰符,且不能有返回语句。

无名氏的程序员
39分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部