递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 893|回复: 0
打印 上一主题 下一主题

[安卓] 安卓获取网卡MAC地址列表

[复制链接]

18

主题

90

帖子

849

积分

高级会员

Rank: 4

积分
849
跳转到指定楼层
楼主
发表于 2023-11-17 15:50:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 kerry 于 2023-11-17 16:07 编辑
  1. <火山程序 类型 = "通常" 版本 = 1 />

  2. 方法 取网卡MAC列表 <静态 类型 = "文本型[]" 注释 = "获取系统所有网卡MAC地址." 返回值注释 = "成功返回mac地址数组." @禁止流程检查 = 真
  3.         @安卓.权限需求 = "android.permission.ACCESS_WIFI_STATE\nandroid.permission.INTERNET">
  4. 参数 环境对象 <类型 = 安卓环境>
  5. {
  6.     @     java.util.List<String> interfaces = new java.util.ArrayList<>();
  7.     @      try {
  8.     @          java.util.Enumeration<java.net.NetworkInterface> nis = java.net.NetworkInterface.getNetworkInterfaces();
  9.     @          while (nis.hasMoreElements()) {
  10.     @              java.net.NetworkInterface ni = nis.nextElement();//获取元素对象
  11.     @              byte[] ethMac = ni.getHardwareAddress();//获取mac地址
  12.     @              if (ethMac != null) {
  13.     @                  StringBuilder macAddress = new StringBuilder();
  14.     @                  for (byte i : ethMac) {
  15.     @                       macAddress.append(String.format("%02X:", i));
  16.     @                  }
  17.     @                 if (macAddress.length() > 0) {
  18.     @                     macAddress.deleteCharAt(macAddress.length() - 1);
  19.     @                  }
  20.     @                  interfaces.add(macAddress.toString());
  21.     @              }
  22.     @          }
  23.     @        } catch (Exception e) {
  24.     @            e.printStackTrace();
  25.     @        }
  26.     @        String[] arr = new String[interfaces.size()];
  27.     @        return interfaces.toArray(arr);
  28. }
复制代码

感谢快利云群内的大神多轮的指导,终于完工,发出来好方便有其它的需求的用户使用,少走弯路
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-6-19 04:16 , Processed in 0.086890 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表