工业级android系统14及以下获取以太网Mac地址

64 阅读1分钟

介绍一种获取以太网mac地址的一种方法,该方法支持支持Android 14以下系统,该方法是通过读取/sys/class/net/eth0/address节点进行以太网mac地址获取。

函数如下:

private static String ParseFileAsString(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();
}

public String readEthMacAddress() {
   try {
	   return ParseFileAsString("/sys/class/net/eth0/address")
					   .toUpperCase().substring(0, 17);
   } catch (IOException e) {
	   e.printStackTrace();
	   return null;
   }
}
    

因为工业环境比较复杂,所以一般使用有线连接比较稳定,然后我这边的客户需求是把机器安装的固定产线上的,所以是通过绑定以太网mac地址和产线任务方式来的。

我这边测试的工位机覆盖的版本范围:(android7.1.4, android14)

传统的手机可能因为不同系统限制,android14不一定行,具体我没尝试,这个要注意!!!

参考地址:blog.csdn.net/hedalei/art…