//根据busybox获取本地Mac
public static String getLocalMacAddressFromBusybox(){
String result = "";
String Mac = "";
result = callCmd("busybox ifconfig","HWaddr");

//如果返回的result == null,则说明网络不可取
if(result==null){
return "网络出错,请检查网络";
}

//对该行数据进行解析
//例如:eth0 Link encap:Ethernet HWaddr 00:16:E8:3E:DF:67
if(result.length()>0 && result.contains("HWaddr")==true){
Mac = result.substring(result.indexOf("HWaddr")+6, result.length()-1);
Log.i("test","Mac:"+Mac+" Mac.length: "+Mac.length());

/*if(Mac.length()>1){
Mac = Mac.replaceAll(" ", "");
result = "";
String[] tmp = Mac.split(":");
for(int i = 0;i<tmp.length;++i){
result +=tmp[i];
}
}*/
result = Mac;
Log.i("test",result+" result.length: "+result.length());
}
return result;
}

private static String callCmd(String cmd,String filter) {
String result = "";
String line = "";
try {
Process proc = Runtime.getRuntime().exec(cmd);
InputStreamReader is = new InputStreamReader(proc.getInputStream());
BufferedReader br = new BufferedReader (is);

//执行命令cmd,只取结果中含有filter的这一行
while ((line = br.readLine ()) != null && line.contains(filter)== false) {
//result += line;
Log.i("test","line: "+line);
}

result = line;
Log.i("test","result: "+result);
}
catch(Exception e) {
e.printStackTrace();
}
return result;
}

最新文章

  1. Android应用中MVP开发模式
  2. (转)redis 3.0的集群部署
  3. 查看 并发请求数及其TCP连接状态【转】
  4. CSS3常用属性
  5. 内存管理_深入剖析volatile关键字
  6. Java中的static关键字解析(转自海子)__为什么main方法必须是static的,因为程序在执行main方法的时候没有创建任何对象,因此只有通过类名来访问。
  7. [有向图的强连通分量][Tarjan算法]
  8. macOS Sierra安装Apache2.4+PHP7.0+MySQL5.7.16
  9. 详解 swift2.2 和 OC 的混编
  10. 简单bmp图片处理工具——python实现
  11. pycharm激活
  12. mysql 无法插入中文
  13. 带你了解源码中的 ThreadLocal
  14. LeetCode(116):填充同一层的兄弟节点
  15. ASP.Net Core中使用jquery-ajax-unobtrusive替换Ajax.BeginForm
  16. leecode第二十六题(删除排序数组中的重复项)
  17. MySQL 数据类型对比:char 与 varchar;varchar 与 text;datetime 与 timestamp;blob 与 text;
  18. php-fpm的status可以查看汇总信息和详细信息
  19. Socket网络编程--Libev库学习(3)
  20. MyBatis学习笔记(六)——调用存储过程

热门文章

  1. python迭代、可迭代对象、迭代器及生成器
  2. this和target目标对象的区别
  3. 引入background和background-size不显示图片
  4. kafka的安装及基本使用
  5. 基于python实现GET和POST请求及token相关调用
  6. JDBC(2)-使用statment接口实现增删改操作
  7. 没有循环的JavaScript
  8. 1、Shell命令行书写规则
  9. java文件在没有安装jdk的windows下运行。
  10. html中行级元素的居中显示。