当前位置:游戏堡手游资讯手机教程 > Android手机如何获取Mac地址

Android手机如何获取Mac地址

2017-06-14 17:45:01 来源:游戏堡 编辑:yxbao 在手机上查看

扫描进入手机端查看

我要留言

 最常用的方法,通过WiFiManager获取:

Android手机如何获取Mac地址

/** 
   * 通过WiFiManager获取mac地址 
   * @param context 
   * @return 
   */ 
  private static String tryGetWifiMac(Context context) { 
    WifiManager wm = (WifiManager) context.getApplicationContext().getSystemService(Context.WIFI_SERVICE); 
    WifiInfo wi = wm.getConnectionInfo(); 
    if (wi == null || wi.getMacAddress() == null) { 
      return null; 
    } 
    if ("02:00:00:00:00:00".equals(wi.getMacAddress().trim())) { 
      return null; 
    } else { 
      return wi.getMacAddress().trim(); 
    } 
  } 

这个方法Android 7.0是获取不到的,返回的是null,其实是返回“02:00:00:00:00:00”

根据本地IP获取:

/** 
   * 根据IP地址获取MAC地址 
   * 
   * @return 
   */ 
  private static String getLocalMacAddressFromIp() { 
    String strMacAddr = null; 
    try { 
      //获得IpD地址 
      InetAddress ip = getLocalInetAddress(); 
      byte[] b = NetworkInterface.getByInetAddress(ip).getHardwareAddress(); 
      StringBuffer buffer = new StringBuffer(); 
      for (int i = 0; i < b.length; i++) { 
        if (i != 0) { 
          buffer.append(':'); 
        } 
        String str = Integer.toHexString(b[i] & 0xFF); 
        buffer.append(str.length() == 1 ? 0 + str : str); 
      } 
      strMacAddr = buffer.toString().toUpperCase(); 
    } catch (Exception e) { 
 
    } 
 
    return strMacAddr; 
  } 
 
/** 
   * 获取移动设备本地IP 
   * 
   * @return 
   */ 
  private static InetAddress getLocalInetAddress() { 
    InetAddress ip = null; 
    try { 
      //列举 
      Enumeration<NetworkInterface> en_netInterface = NetworkInterface.getNetworkInterfaces(); 
      while (en_netInterface.hasMoreElements()) {//是否还有元素 
        NetworkInterface ni = (NetworkInterface) en_netInterface.nextElement();//得到下一个元素 
        Enumeration<InetAddress> en_ip = ni.getInetAddresses();//得到一个ip地址的列举 
        while (en_ip.hasMoreElements()) { 
          ip = en_ip.nextElement(); 
          if (!ip.isLoopbackAddress() && ip.getHostAddress().indexOf(":") == -1) 
            break; 
          else 
            ip = null; 
        } 
 
        if (ip != null) { 
          break; 
        } 
      } 
    } catch (SocketException e) { 
 
      e.printStackTrace(); 
    } 
    return ip; 
  } 

这个方法Android 7.0及其以下版本都可以获取到。

根据网络接口获取:

/** 
 * 通过网络接口取 
 * @return 
 */ 
private static String getNewMac() { 
  try { 
    List<NetworkInterface> all = Collections.list(NetworkInterface.getNetworkInterfaces()); 
    for (NetworkInterface nif : all) { 
      if (!nif.getName().equalsIgnoreCase("wlan0")) continue; 
 
      byte[] macBytes = nif.getHardwareAddress(); 
      if (macBytes == null) { 
        return null; 
      } 
 
      StringBuilder res1 = new StringBuilder(); 
      for (byte b : macBytes) { 
        res1.append(String.format("%02X:", b)); 
      } 
 
      if (res1.length() > 0) { 
        res1.deleteCharAt(res1.length() - 1); 
      } 
      return res1.toString(); 
    } 
  } catch (Exception ex) { 
    ex.printStackTrace(); 
  } 
  return null; 
} 

注意网络接口的Name有跟多:dummy0、p2p0、wlan0....其中wlan0就是我们需要WiFi mac地址。这个方法Android 7.0及其以下版本都可以获取到。

声明:游戏堡网登载此文出于传递信息之目的,不代表游戏堡网赞同其观点或证实其描述,若侵权请来信告知,我们将及时处理。
相关资讯
安卓手机分屏多窗口教程
安卓手机分屏多窗口教程

现在很多使用安卓手机的伙伴想知道安卓手机怎么分屏?分屏的意思就是一心多用,几个软件同时使用,这样是不是很方便,那么安卓手机怎么分屏呢?想知道的伙伴一起来看看安卓手机分屏多窗口教程。安卓手机分屏多窗口教程:然后就是下载装置全能的xpoesd结构了,地地址good_good_[host]:http://pan.baidu

安卓手机otg功能怎么用
安卓手机otg功能怎么用

1,使用otg连接键盘写短信只要将MicroUSB端口连接手机,再将USB端口连接相应数码设备即可。安卓手机otg功能怎么用2,使用otg数据线连接U盘资料查找方法:进入“文件管理”--点选“SD卡”选项---点选“SD卡”横栏---在下拉菜单中选择你的储存设备


热门推荐
一周热点资讯
1
探探发朋友圈方法教程

探探是一款全新的交友应用,互相喜欢就可以轻松的聊天交友哦。那么探探怎么发朋友圈?下面就让小编来给大家介绍一下吧。探探怎么发朋友圈?1、打开探探进入软件后点击右上角【气泡】,接着点击【朋友圈】。2、接着点击右下角【相机】,选择照片后点击右上角【完成】。

2
微信零钱怎么免手续费取出?

微信零钱怎么免手续费取出?很多人都知道微信现在零钱提现钱要收取手续费的,虽然金额不多但也是一笔小钱了,那怎么才能把微信零钱免费提取出来呢?接下来小编为大家介绍下微信零钱免手续费提现教程,让你不花手续费就能轻松取出零钱。微信免手续费提现教程:1、智能手机上安装的微信应用软件,进入后找到“

3
马上金融官网客服热线

马上金融是一款非常不错的手机金融理财软件,如果想要了解软件中优质的理财产品的话,可以向马上金融的客服询问,那么马上金融客服电话多少呢?接下来就跟随小编一起来看看马上金融官网客服热线。马上金融客服电话多少?马上金融客服电话:027-8763-0345马上金融人工客服电话:027-8763-2680马上金融官网

4
微信公众号文章怎么复制到另一

怎么把公众号文章复制到另外一个公众号,我们可以通过利用电脑网页打开微信的公众号信息进行来搬运。点击下载:微信安卓版点击下载:微信苹果版1、在微信打开需要进行复制公众号的文章,点击右上角的按钮。2、在这里点击复制链接。3、接着把网址连接发送到电脑上面进行打开,在网站上面复

5
探探配对方法教程详细介绍

探探是一款最受女性欢迎社交,互相喜欢就可以轻松的聊天交友哦。那么探探怎么找到合适的朋友呢?有困惑的朋友一起来探讨下。探探怎么配对?1、扩大搜索的范围:很多人经常抱怨身边没什么用户,看了几个之后,就搜索不到了,其实我们可以放宽自己的条件,除了距离之外,年龄也是一样的,如果年龄限制的很多的话,适合

6
微信转账到账时间延迟设置流程

微信是很多小伙伴们日常最常使用的,不少小伙伴们在进行使用的时候最害怕的就是转账转错了,现在小伙伴们不用担心了,可以设置延时到账,因此不清楚的小伙伴们,就让小编给大家详细的讲讲吧。微信转账到账时间延迟设置流程介绍需要说明的是,虽然微信延时到账的不一定能百分百解决转错账或者欺诈风险,但可以为我们

7
阴阳师实名认证中修改方法

现在很多玩阴阳师手游的伙伴在问实名认证可以修改或者取消吗?那么小编今天就在这里跟大家分享一下阴阳师实名认证怎么取消?阴阳师实名认证中修改方法。有需要的一起看看吧!一、阴阳师实名认证怎么取消?已经绑定身份证的账号,是不能修改的,但在认证中的账号可以重新认证。二、阴阳师实名认证中修改方法

8
小米贷款app借款方法介绍

在4月11日早上9点,小米MIUI官方推出了一款小米贷款app,官方称小米贷款App独立发布,面向所有安卓手机用户提供小额信贷服务。这款软件贷款非常的简单,只需要三步就可以完成,下面就为大家带来小米贷款app借款方法介绍,缺钱的小伙伴赶紧过来周转一下。小米贷款app怎么进行贷款小米贷款获贷简单,官方称仅需

9
微信支付额度用完了怎么办

微信支付额度用完了怎么办?微信支付额度用完了还可以增加吗?有什么好的解决办法?下面小编就来为大家介绍一下微信支付额度用完了的解决办法,一起来看看吧!步骤如下:1、微信红包零钱支付目前是没有限额的,可多使用零钱支付;2、绑定的银行卡每天的支付是有限额的,每个银行都对网上交易做了规范,要提升

10
2017最新老司机直播平台

又到春天了,各位老司机经过了漫长的冬天都有点那啥,憋坏了是吧?游戏堡可是很能体会各位老司机的,所以给老司机们整理了2017最新老司机直播平台,祝各位老司机玩得愉快,准备好纸巾~你们懂的。1.密蜜直播密蜜直播app是一款高颜值社交直播客户端应用,密蜜直播手机版有漂亮的主播、有好玩的卖萌特效还有趣味的

11
如何获取别人的QQ密码

想用别人的qq号码,最主要的就是把别人的密码偷来,因为,没有人会告诉你:我的密码是多少,那么,我们怎么去把别人的密码偷来呢?小编为你汇总了几种方法希望对你有用,看看学学可以,用还是免了吧,万一玩脱了就滑稽了!废话少说,进入正题。那么,我们怎么去把别人的密码偷来呢?请看——1、在线密码破解大家

12
可以免费看最新上映的电影的网

很多用户想要看最新的电视剧、电影,但是由于版权问题现在新电影都要付费才能观看,那么有哪些网站可以免费看最新上映的电影、电视剧呢?进今天你来对了,下面小编就给大家介绍一些免费看的网站。所有高清资源下载的源头是BT/PT,下游有各类资源站点。电影,甚至美剧

游戏堡简介 商务合作 人才招聘 法律声明 友情链接 家长监控

作品版权归作者所有,如果侵犯了您的版权,请联系我们 youxibaohezuo@gmail.com,本站将在3个工作日内删除。

中国综合游戏门户之一,游戏堡网提供(单机游戏、网络游戏、网页游戏、手机游戏等)资讯、攻略、下载、补丁 是您找游戏内容的最好选择。

CopyRight 2005-2016 www.yxbao.com All Rights Reserved 琼ICP备2024016402号-4

游戏堡网温馨提示:抵制不良游戏,拒绝盗版游戏,注意自我保护,谨防受骗上当,适度游戏益脑,沉迷游戏伤身,合理安排时间,享受健康生活!